自动化测试和分层测试

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/c_first/article/details/82319642

为什么要做自动化测试?

  • 有限时间测试大量的东西,测不完
  • 重复的劳动,浪费人力财力
  • 测试要求的条件苛刻,人工达不到

自动化帮我们解决重复性的劳动,帮我们实现人工无法实现的事情


自动化测试的定义

自动化测试是借助测试工具、软件,从局部或者全部代替人工进行测试,提高测试效率


自动化测试能完全替代手工测试?

  • 手工测试要比自动化发现的BUG多
  • 自动化是在手工测试稳定的基础上实行的
  • 自动化是在软件版本较稳定、软件迭代频繁、软件周期长的这些情况下才开展的

什么场合适合做自动化

  • 回归测试
  • 频繁的版本迭代测试
  • 手工无法实现的测试
  • 跨平台的测试
  • 重复性很强的测试

什么场合不适合做自动化

  • 设计到与物理设备交互的测试
  • 结果很容易通过人为来验证的测试
  • 软件版本不稳定

适合自动化的项目

  • 测试任务明确,不频繁变动
  • 每日构建的测试验证
  • 频繁的回归测试
  • 系统界面稳定,变动少
  • 需要在多个平台上运行相同的测试
  • 大量的重复劳动
  • 软件维护周期长
  • 项目进度压力小
  • 被测软件开发规范,能够保证可测性
  • 测试人员编程能力较强

分层测试

UI层:页面测试,黑盒测试,是常见的自动化场景之一,最接近用户使用场景,最容易发现问题,但是实现成本最高,容易受外部依赖影响,从而影响脚本的成功率

Service层:接口测试,黑盒测试,清楚系统的结构和系统、模块之间的调度,结构的逻辑关系,相对于单元测试,会多一些外部的依赖条件,导致问题定位没有单元测试的准确,所以投入相对单元测试要多

Unit层:单元测试,白盒测试,外部依赖最少啊,模拟各种场景,可以做到测试粒度最细的一种测试方法,是一切测试的地基

猜你喜欢

转载自blog.csdn.net/c_first/article/details/82319642