查看: 28|回复: 0

[互联网技术] 江苏豪之诺软件测试实施自动化测试的六个目标和意义

发表于 2018-9-6 14:42:28

实施自动[url=]测试[/url]的目标和意义

  1)对于功能已经完整和成熟的软件,每发布一个新的版本,其中大部分功能和界面都和上一个版本相似或完全相同,这部分功能特别适合于[url=]自动化测试[/url], 从而可以让测试达到测试每个特征的目的。

  2)每日测试的高效率。DCC版本的发布周期往往比较短,也就是开发周期只有短短的几个月,而在测试期间是每天/每2天都要发布一个版本供测试人员测试,一个系统的功能点有几千个上万个,人工测试是非常的耗时和繁琐,这样必然会使测试效率低下。

  3)具有一致性和可重复性。由于每次自动化测试运行的脚本是相同的, 所以每次执行的测试具有一致性,人是很难做到的。由于自动化测试的一致性,很容易发现被测软件的任何改变。

  4)更好的利用资源。理想的自动化测试能够按计划完全自动的运行, 在开发人员和测试人员不可能实行三班倒的情况下, 自动化测试可以胜任这个任务, 完全可以在周末和晚上执行测试. 这样充分的利用了公司的资源,也避免了开发和测试之间的等待。

  5)解决测试与开发之间的矛盾。通常在开发的末期,进入集成测试阶段,由于每发布一个版本的初期,测试系统的错误比较少,这时开发人员有等待测试人员测试出错误的时间. 事实上在叠代周期很短的开发模式中,存在更多的矛盾, 但自动化测试可以解决其中的主要矛盾。

  6)将烦琐的任务转化为自动化测试。大量重复的测试是非常繁琐的,并且需要消耗大量的人力才能够完成。自动测试能够很好的解决这个问题,不需要繁琐的劳动,不需要大量的人员。

  7)增加软件信任度。只有经过大量测试案例测试过的版本才是可靠的,而只有使用自动测试才能够保证在段时间内完成大量的测试案例。

  自动测试无法完全代替手工测试

  1)不能期望自动化测试去发现更多新的缺陷,事实证明新缺陷越多,自动化测试失败的几率就越大。发现更多的新缺陷应该是手工测试的主要目的。测试专家James Bach总结得 85%的缺陷靠手工发现,而自动化测试只能发现15%的缺陷。

  2)工具本身不具有想象力。

  工具毕竟是工具,出现一些需要思考、体验、界面美观方面的测试,自动化测试工具无能为力。

  3)美观、声音、易用性测试,无法使用自动测试。人的感观方面的:界面的美观、声音的体验、易用性的测试,也只有人来测试。

  4)测试很少运行:一个月只运行一次。测试很少运行,对自动化测试就是一种浪费。自动化测试就是让它不厌其烦的、反反复复的运行才有效率。

  5)软件不稳定。软件不稳定,则会由于这些不稳定因素导致自动化测试失败。只有当软件达到相对的稳定,没有界面性严重错误和中断错误才能开始自动化测试。

  6)涉及物理交互。工具很难完成与物理设备的交互,比如刷卡的测试、打印数据(检查打印格式是否正确)等。




回复

使用道具 举报