自动化测试:
指软件测试的自动化,在预设状态下运行应用程序或者系统,预设条件包括正常和异常,最后评估运行结果。将人为驱动的测试行为转化为机器执行的过程。
常见的自动化测试工具:
QTP,selenium,Rational Root,jmeter,appium,soapui(接口自动化测试工具),LR等等。
selenium是一个web的自动化测试工具,相比QTP有诸多优点:
(1)免费
(2)小巧(QTP需要下载1个多G的程序)
(3)selenium支持多种语言,QTP只支持VBS
(4)支持多平台支持多浏览器(IE,Chrome,Fireiox)
(5)支持分布式测试用例的执行,可以把测试用例分布到不同的测试机器执行。
自动化工具和自动化框架区别?
自动化测试框架一般可以分为两个层次:上层管理整个自动化测试的开发,执行以及维护。
下层主要是测试脚本的开发。充分的使用相关的测试工具,构建测试驱动,并完成测试业务逻辑。
自动化测试方法:
测试对象:UI,接口,代码
测试过程:系统测试,集成测试,单元测试
自动化测试可以在整个测试过程中的任何一个阶段实施; 测试人员一般在系统测试时进行自动化测试;
集成测试阶段多进行自动化构建,部署,以及冒烟测试的自动化;
UI自动化
(1)用例维护量大
(2)页面相关性强,必须后期介入
(3)UI测试适合与界面变动较小的项目
接口自动化
(1)可在产品前期介入
(2)用例维量量小
(3)页面相关性小
(4)适合接口变动较小,界面变动频繁的项目
自动化的优势:
(1)降低大型系统的由于变更或者多期开发引起的大量的回归测试的人力投入。
(2)减少重复测试的时间,实现快速回归测试
(3)减少人为错误
(4)将繁琐的任务自动化
(5)更好利用资源
(6)可以执行一些手工测试困难或不可能进行的测试
(7)测试具有一致性和可重复性
自动化测试适用对象:
前提条件:需求变动不频繁,项目周期足够长,自动化测试脚本可重复使用 。
适合做自动化的项目:
(1)产品型项目:新版本在旧版本的基础上进行改进,功能变化不大的项目,但项目的新老功能都必须重复的进行回归测试。
(2)机械并频繁的测试:每次需要输入相同,大量的一些数据,并且在一个项目中运行的周期比较长。
实施自动化测试步骤:
(1)分析(把握总逻辑,分析核心架构)
(2)设计(用例要明确和清晰,广而精)
(3)实现
(4)执行
(5)总结(结果分析,过程总结)
(6)维护
(7)分析
自动化测试实施失败的原因:
(1)期望值过高
(2)对收益和成本认识不清
注:成本 = 实现成本+运行维护成本
发展方向:
(1)自动化脚本的执行,维护和结果分析
(2)自动化脚本的编写
(3)自动化测试方案的设计,框架的选型
(4)自动化测试框架的编码实现
(5)自动化测试框架的设计