软件测试思想者 - 自动化测试ABC
一、自动化测试的起源
自动化测试源于手工测试,它的产生是为解决手工测试存在的问题。
1、手工测试存在的问题:
- 时间紧,任务重,资源有限,在规定时间里难以完成大面积的测试覆盖
- 重复性工作消磨测试人员的士气,降低测试效率与可靠性
- 大批量数据需要验证时,手工测试不仅存在效率问题,而且易出错,精确性低
- 测试人员的理解能力不一样,导致测试结果的不一致性
2、自动化测试的优势:
- 不知疲倦,7*24小时工作,在规定时间里可做到大面积的测试覆盖
- 没有人的喜怒哀乐,胜任重复性测试工作
- 大批量数据需要验证时,精确性高
- 同样的测试脚本,在同样的测试环境下,测试结果是一致的
二、自动化测试框架技术的发展
- 录制回放
- 数据驱动
- 关键字驱动
- 业务驱动
1、录制回放:
优点:简单,无需编程
不足:难以维护,不稳定,难以重用
2、数据驱动:
优点:脚本与数据分离,可快速增加类似测试
不足:需要编程,编写和维护脚本的成本高
3、关键字驱动(表驱动):
优点:界面元素名与测试内部对象名分离,测试描述与具体实现细节分离,脚本与数据分离,三个分离可以做到相互独立,最大程度的减少相互之间的影响,提高了脚本的复用度和可维护性
不足:需要专业技能的工程师维护脚本
4、业务驱动(行为驱动):
优点:对不懂技术的用户来说,易于理解和维护
不足:缺乏相应的工具,难以实施
三、自动化测试的层次
- 单元测试(投资最少,收益最大)
- 接口测试(收益比单元测试少)
- UI测试(收益比接口测试少)
投资:单元测试 < 接口测试 < UI测试
收益:单元测试 > 接口测试 > UI测试
四、常见的自动化测试
- 单元测试自动化
- 性能测试自动化
- 功能测试自动化
五、自动化测试的条件和实施方式
1、项目条件
- 项目规模比较大
- 项目周期长
- 基础功能稳定
- 回归测试
2、实施方式
- 先试点后逐步推广
- 以项目方式进行管理
六、自动化测试成本因素
1、自动化测试固定成本的因素:
- 所需硬件采购成本
- 所需测试工具采购和技术支持成本
- 自动化测试环境的设计和搭建成本
- 自动化测试环境的维护成本
2、自动化测试可变成本的因素:
- 自动化测试用例的设计成本
- 自动化测试用力的实现成本
- 自动化测试的维护成本
- 自动化测试用例的执行成本
- 自动化测试结果的分析成本
七、自动化测试的不足
- 自动化测试的脚本的维护成本比较高
- 自动化测试发现的缺陷大部分是已经发现的缺陷
- 不能完全取代手工测试
如何联系“软件测试思想者”?
- 微信公众号:SoftwareTestThinker
- 微信号:weixin_samwang_2015
- QQ号码:81976881
- 邮箱:[email protected]