3.有理有据的选择测试策略(ROI尽可能大)

1.首先,需要将测试设计领域分层:系统、服务、单元

对应的测试结构:UI测试、接口测试、单元测试

  • UI测试关注功能场景测试,易用性测试和可执行性测试
  • 接口测试关注不同数据的循环,对接口的性能和错误恢复能力
  • 单元测出测试关注算法的正确性和性能

ROI尽可能大就是让每层测试尽可能做自己能做的全部事情,自己不擅长的时间交给其他擅长的层级去做。

2.每层对应的ROI:

单元测试:无法手工,运行次数多,维护成本低,开发成本低->ROI高

接口测试:手工运行时间中,运行次数多,维护成本中,开发成本中->ROI中

UI测试:手工运行时间长,运行次数少,维护成本高,开发成本中->ROI低

3.从ROI出发看,对应自动化测试顺序:优先单元测试,再做接口测试,最后完成UI测试.

但是,实际上,很多公司没有资源和时间做所有的测试,所以我们进一步分析,如何选择最优ROI策略呢?

1.分析需求

  • 功能性:特性、功能、安全性
  • 易用性:人性化因素、帮助、文档
  • 可靠性:故障频率、可恢复性、可预测性
  • 性能:响应时间、吞吐量、准确性、有效性、资源利用率
  • 可支持性:适应性、可维护性、国际性、可配置性

2.测试类型和需求结合

3.有理有据的选择测试策略(ROI尽可能大)_第1张图片3.分析每个层面的测试能力

  • UI层面:功能性最强,所有测试需求都可以做
  • 接口层面:功能性减弱,技术性增强
  • 单元层面:技术型最强,主要体现在数据的处理,算法逻辑上

4.整体最优ROI【核心原则】

  • 每个需求都收有效的
  • 每个测试需求都是优先寻找自动化ROI高的层面去丝线
  • 每个层面的验证不重复

遵循核心原则,根据公司情况去选择具体的自动化测试策略。不是单元测试ROI最高一定就能达到对应的要求,每一层的测试对人员和公司的要求都不尽相同。

备注:

不管是做哪一层,都需要逐步去做。感受到好处,再持续补充和扩展,形成良性循环。

你可能感兴趣的:(自动化测试)