手工测试 | 依据测试用例,依次对产品进行输入等操作并进行实际结果与期望结果对比的测试手段。测试人员需要具备手工测试过程中发现缺陷的基本技能。测试人员素质以及其他不确定因素会影响手工测试结果,导致差错率的发生。 |
自动化测试 | 把人为驱动的测试过程转变为机器执行的一种过程,避免操作过程中人为的疏忽和错误。 |
自动化测试的发展:
简单的录制回放 | 测试数据和执行脚本混杂在一起,复用性低,维护成本高,受界面影响大。 |
数据驱动 | 从数据文件读取测试数据,通过变量参数化,将测试数据传入测试脚本,可维护性高,受界面影响大。 |
关键字驱动 | 是数据驱动的一种改进类型,将测试逻辑按照关键字进行分解,封装在数据文件中,关键字对应封装的逻辑。主要关键字包括被操作对象(Item)、操作(Operation)和值(Value),用面向对象的形式可表表现成Item. Operation(Value),脚本与数据分离、界面元素与测试内部对象分离、测试描述与具体实现分离。 |
自动化测试的流程:
创建以及更新测试用例文档 | 自动化测试用例源于手工测试用例,在进行手工用例测试用例设计之时候,需要标注是否适合自动化测试。在开发自动化脚本之前,将美一步手工测试的步骤和验证点设计为自动化测试用例文档,可以做自动化测试用例的存档和记录,也便于自动化脚本开发人员开发出和文档一致的手工测试用例一致的脚本。 |
测试框架设计 | 是自动化测试开发过程中最重要的环节,框架需要具备健壮性、可复用性、通用性、可扩展性,以便于需求变更时对测试框架或测试脚本做少量修改即可。同时测试框架还要考虑到一些公用组件,例如日志引擎、异常处理等。 |
测试脚本开发 | 测试脚本是基于测试框架,完成产品具体测试用例的代码或脚本。要注意脚本之间的独立性,同时也要考虑到脏数据的清除和环境的重置。 |
自动化用例执行 | 可以结合持续集成机制、等待系统或产品环境部署完毕,做相应的自动化回归,执行完毕,将相应的日志发送给相应的人员。 |
脚本维护 | 产品需求变更,自动化脚本应做相应的修改,维护周期视情况而定。 |
自动化测试的优缺点分析:
优点 | 1、缩短测试时间 |
缺点 | 1、自动化测试适合软件后期的回归测试、性能测试、压力测试等,手动测试具有足够的想象力,具备一定的偶然性,更容易发现缺陷 |