项目可行性分析
测试性的概念
那么测试性可以简单总结为:软件测试性代表了软件能否容易的被测试。
可测性的指标:
实际项目中的情况:
- 需要构建的场景不能通过业务触达
- 依赖的外部接口无法满足测试场景
- 测试数据构造困难
- 环境不支持
- ......
QA如何应对?
- Q:如何评估项目中哪些场景无法测试
A:QA在用例设计中,不仅需要考虑正向用例,还需要考虑多种反向用例,如在输入金额时输入负数,
不仅需要考虑可以测试的用例,还需要考虑无法通过业务触达的用例如何去实现,而这部分的用例覆盖需要在用例设计阶段去判断每一条用例是否可控制,可追踪。
- Q:评估出无法测试的场景如何处理
A: 与开发沟通方案,通常可以通过工具、独立接口和代码mock解决,如果没有达成一致需要及时升级到项目负责人和测试负责人协调解决,而不是不处理。
应对方案:
- 工具支持
- 通常无法通过业务触达,但需要重复大量测试的接口测试需要提前做测试工具的准备
- 开发写独立接口支持
- 测试和开发在用例评审时确定的提供的测试连接,不会开放给用户
- Mock支持
- 1、代码mock
- 通过开关配置,模拟一些特殊的场景构造
- 举例: 20210316支付失败总结
- 2、平台mock 需要mock平台以及环境支持
- http://10.10.50.192:9009/xyy/index.html
原则:无论测试环境还是灰度环境,必须有一个环境是用真实业务来验证。
- 测试脚本支持
- 批量数据验证:如批量添加机构, 特殊dubbo接口测试
三. 推荐书籍
测试架构师修炼之道:从测试工程师到测试架构师