1、提高软件测试效率方法探讨,摘要 软件测试是保证软件质量的重要手段, 如何组织软件测试,耗费最少的时间与最小的 工作量完成软件测试,使软件质量满足用户要 求,是我公司需要解决的问题。,影响软件测试效率的因素很多。软件测试 人员对项目需求的理解程度,对测试理论、工 具和方法的掌握程度,在测试过程中又受测试 时间的限制而无法发现一些BUG ,对软件测试 效率有很大的影响。软件开发人员的设计与编 程水平,有时会出现修改完成了一个BUG,同 时又引入多个BUG的情况,需要经过多轮回归 测试才能够完成问题归零。所以在工程中需要合理组织软件测试,提高软件测试效率。,提高软件测试效率,一、测试前: 了解设计原
2、型和设计文档(希望设计部能提供快速、准确的资料),熟悉功能和业务流程的需求。 做好测试计划,准备测试所需数据,保证测试能在时间可控且有序下进行。,提高软件测试效率,二、测试中: 首轮测试使用手工测试,测试进度、提出的BUG,使用工具或文档作好记录(先尝试用禅道管理软件),提高软件测试效率,三、测后维护 随着公司维护性软件项目越来越多,软件测试 的工作量很大;测试中的有些模块、操作是重 复性的、非智力性的和非创造性的,并要求做 准确细致的工作。对于回归性测试,可考虑采 用自动化测试。,自动化测试定义,它是相对手工测试而存在的,主要是通过所开发的软件测试工具、脚本等来实现,具有良好的可操作性、可重
3、复性和高效率等特点。,广力软件科技有限公司,广力软件科技有限公司,通常,手工测试的目标着重于发现新的软件故障,而自动化测试的目标则是着重于发现旧的软件缺陷,特别是针对回归测试而言。我公司做回归性测试的情况比较频繁,有的时候因为公用代码的修改引起很多连带问题由于项目测试时非全面测试或思虑不周而没有找出来。 软件测试提倡尽早测试、不间断测试,其工作量非常大,需要投入大量的时间与精力,但是我公司交付测试的时间普通偏少不够用。,自动化测试的必要性,广力软件科技有限公司,公司项目公用的相关功能模块变化较小,代码和功能重复率高; 公司具有专业过硬的开发人员可以辅助指导驱动脚本的编写; 公司具有测试经验丰富
4、、对公司现有项目非常了解的测试人员; 部门领导对引入自动化测试相当支持;,自动化测试的可行性,广力软件科技有限公司,自动化测试的优点,1)对程序的回归测试更方便。 2)更好地利用资源。将繁琐的任务赋予自动化方式,将测试人员解脱出来投入更多精力设计更好的测试用例。以及那些仅适合于手工测试,提高软件质量。 3)测试具有一致性和可重复性。由于测试是自动执行的,每次测试的结果和执 行的内容的一致性是可以得到保障的,从而达到测试的可重复的效果。 4)测试脚本的复用性。自动化测试是由脚本驱动的,新的变动不大的功能可以通过少量的脚本修改来达到可观的复用效果。 5)可以让产品更快面向市场。 6)增加软件信任度
5、。由于测试是自动执行的,所以不存在执行过程中的疏忽和 错误,完全取决于测试的设计质量。一旦软件通过了强有力的自动测试后,软件的信 度自然会增加。,广力软件科技有限公司,自动化测试的缺点,1)不能取代手工测试 ; 2)手工测试比自动测试发现的缺陷更多; 3)对测试人员的编程能力有一定要求; 4)对测试人员的依赖性极大; 5)前期需要投入大量时间、人力资源写测试脚本; 5)后期有需求变动,会花费大量资源维护测试脚本; 6)对于逻辑性强或经常变动的模块,不适用自动化测试; 7)测试自动化可能会制约软件开发 ;,广力软件科技有限公司,自动化测试实施流程,选择自动化测试范围 分析范围内需要的自动化测试技
6、术 基于需求进行测试工具选型 指定自动化测试计划及方案 自动化测试实施 过程改进,广力软件科技有限公司,广力软件科技有限公司,自动化测试认知的误区,误区一:自动化测试是一种比人工测试更先进的高级测试。 误区二:测试应该追求100%的自动化。 误区三:自动化测试能够发现大量的缺陷,就发现缺陷而言,它比人工测试更有效率。 误区四:应该对一次性的软件项目采取自动化测试。 误区五:商业自动化测试工具更好,一定要用商业自动化测试工具。,广力软件科技有限公司,14,自动化测试与人工测试适合情况对比,广力软件科技有限公司,软件自动化测试的引入规则,软件测试的自动化过程是一个渐进的过程,可能并不需要一开始就对
7、所有的测试进行自动化,这通常也不现实。 有些测试,完全没有必要采用自动化,因为实施自动化测试所需的时间比手工运行它们全部的次数所需的时间总和还要长。,广力软件科技有限公司,16,目前市场上自动化测试主流工具,广力软件科技有限公司,测试用例(Test Case,测试个案)的生成 测试的执行与控制 测试结果与标准输出的对比 对不吻合测试结果的分析处理 测试状态的统计和报表的生成 自动化测试与每日构建的配合 测试的自动比较和验证,测试工具能够辅助完成的工作,广力软件科技有限公司,18,目前测试自动化遭遇失败的原因,不正确的观念或不现实的期望缺乏具有良好素质、经验的测试人才测试工具本身的问题影响测试的质量没有进行有效的、充分的培训没有考虑到公司的实际情况,盲目引入测试工具没有形成一个良好的使用测试工具的环境其它技术问题和组织问题,