使用 Rational Robot 实现自动化测试 软件测试
自动化测试的好处
在过去的数年中,通过使用自动化的测试工具对软件的质量进行保障的例子已经数不胜数。到现在为止自动化测试工具已经足够完善了,我们完全可以通过在软件的测试中应用自动化的测试工具来大幅度的提供软件测试的效率和质量。在使用自动化的测试工具的时候我们建议尽早的开始测试的工作,这样可以使修改错误更加的容易和廉价,并且可以减少更正错误对软件开发周期的影响。下图显示了手工测试与自动化测试的比较。这个测试案例中包括1750个测试用例和700多个错误。
手工测试与自动化测试的比较
测试步骤 | 手工测试 | 自动化测试 | 通过使用工具的改善测试的百分比 |
测试计划的开发 | 32 | 40 | -25% |
测试用例的开发 | 262 | 117 | 55% |
测试执行 | 466 | 23 | 95% |
测试结果分析 | 117 | 58 | 50% |
错误状态/更正检测 | 117 | 23 | 80% |
产生报告 | 96 | 16 | 83% |
时间总和 | 1090 | 277 | 75% |
通过这个表我们可以看出自动化测试与传统的手工测试在所有的方面都有很大的不同,尤其是在执行测试和产生测试报告的方面。
短测试周期中手工测试面临的挑战
迭代式的开发过程已经显示了比瀑布式开发的巨大好处,并已逐渐的取代传统的瀑布式开发成为了目前最流行的软件开发过程。在迭代开发中强调在较短的时间间隔中产生多个可执行、可测试的软件版本,这就意味着测试人员也必须为每次个迭代产成的软件系统进行测试。测试工作的周期被缩短了,测试的频率被增加了。在这种情况下,传统的手工测试已经严重的满足不了软件开发的需求。如下图所示,当第一个可测试的版本产生后,测试人员开始对这个版本的系统进行测试,很快第二个版本在第一个版本的技术上产生了,测试人员需要在第二次测试时重复上次的测试工作,还要对新增加的功能进行测试,每经过一个迭代测试的工作量会逐步的累加。随着软件开发过程的进展,测试工作变得越来越繁重,如果使用手工测试的方法,将很难保证测试工作的进度和质量。在这种情况下应用良好的自动测试工具将势在必行。通过使用自动化测试工具测试人员只要根据测试需求完成测试过程中的所需的行为,自动化测试工具将自动生成测试脚本,通过对测试脚本的简单修改便可以用于以后相同功能的测试了,而不必手工的重复已经测试过的功能部分。
手工测试的问题
同时,现代的 GUI 开发技术已经非常的先进了,它提供给开发人员快速开发的能力。这就意味着开发人员能够非常快速的改变应用程序,并将新的版本交个测试人员进行测试。实际上,很多公司每天都会有多个应用版本产生。如果还是使用传统的手工测试的方法是根本不可能符合软件快速开发的要求的。
自动化测试的步骤
自动化测试的步骤:
录制测试过程成为自动化测试脚本
增强和改进录制的自动化测试脚本
执行自动化测试脚本完成自动化测试