浅谈软件测试中自动化测试初探 软件测试
摘要:本文介绍[1]了软件测试中的自动化测试,讨论了什么是自动化测试、自动化测试的基本工作过程、自动化测试的应用范围以及自动化测试与手工测试的优点和缺点,最后总结了自动化测试的未来发展方向。
关键字:软件测试;自动化测试;手工测试
1引言
无论采用哪种开发模型所开发出来的软件系统,由于客观系统的
复杂性,加上人的主观认识不可能完美,每个阶段的技术复审也不可能毫不遗漏地查出和纠正所有的错误,再加上编码阶段也必须会引起新的错误,所以在软件使用以前必须经过严格的软件测试,通过测试尽可能找出软件开发各阶段的错误,从而得到高质量的软件。它不只是为了保证软件系统本身高质量,也保证整个软件开发过程是高质量的。不仅如此,软件测试还为风险评估准备信息,给开发人员或程序经理提供反馈信息。
软件测试可用手工来完成,目前大部分都是采用此测试方法。但是,软件测试的工作量很大,据统计,测试会占用到40的开发时间;一些可靠性要求非常高的软件,测试时间甚至占到开发时间的60。而测试中的许多操作是重复性的、非智力性的和非创造性的,并要求做准确细致的工作,计算机就最适合于代替人工去完成这样的任务。这种让计算机来代替人的部分手工测试工作的测试方法,我们称之为自动化测试。它的准确定义是使用一种自动化测试工具来验证各种软件测试的需求,它包括测试活动的管理与实施,测试脚本的开发与执行。自动化测试使测试过程简单并有效率,使测试过程更为快捷,没有延误。这就好比进行一项商业交易,我们已经知道了交易的具体过程,而我们所要做的是设计一套自动化的方法,使交易过程更简单,成本更低。
2自动化测试完成的工作
2.1前期准备工作
在对一个软件系统进行测试之前,我们可以先改进被测试的产品,使它更容易被测试。有很多改进措施可以帮助测试人员更好的使用产品,也可以帮助测试人员更好的测试产品。比如一些产品很难安装,可以直接改进产品的安装程序,或者是开发一套自动安装程序,目前有很多专门制作安装程序的商用工具。
我们也可以利用工具在测试执行的日志中查找错误,利用手工查找报错的方法容易让人感到乏味且易遗漏。这时我们可以仔细了解日志中记录的错误信息格式,写出一个错误扫描程序,使查错自动化。
2.2需求分析
正如软件生命周期有需求分析阶段一样,在制定测试方案之前也需要收集需求。定义自动化测试项目的需求要求我们全面地、清楚地考虑各种情况,然后给出权衡后的需求,并且可以使测试相关人员更加合理的提出自己对自动化测试的期望。
开发管理者、测试管理者和测试人员实现自动化测试的目标常常是有差别的。除非三者之间达成一致,否则很难定义什么是成功的自动化测试。为了避免这种情况,需要在自动化测试需求上保持一致。应该有一份自动化测试需求,用来描述需要测试什么。测试需求应该在测试设计阶段详细描述出来,自动化测试需求描述了自动化测试的目标。
2.3自动化测试工具的选择
我们可以自己根据要测试的软件系统自己开发一个测试工具,但花费代价较大,鉴于此我们可以使用已成熟的测试工具。对于测试工具的选择,要有专人针对不同的自动化测试,去评估究竟该使用哪种测试工具比较好。自动化测试工具又分单元测试工具、功能自动化工具和性能自动化工具,其中又分开源的和商业工具。究竟哪种工具更适合自己平台的测试,还需要有专业人员进行评估。
2.4自动化测试方案的制定
文章来源于领测软件测试网 https://www.ltesting.net/