测试用例价值与体系
首先明确测试的背景、目的,疑问**“如何确定自己测试用例的覆盖度?**
黑盒测试-
等价类
以最小的子集覆盖全测试场景:有效等价类+无效等价类
边界值
是等价类的补充,要选取刚好小于、等于、大于边界值的测试数据
因果图、判定表(输入逻辑)
梳理出前置条件与预期结果之间的逻辑关系,少路径覆盖所有的可能
场景法
流程强的测试系统,可以流程图梳理思路再编写测试用例
事例:登陆按钮的测试用例(加个入口)
面试中测试用例的套路
- 需求确认;
- 功能测试
- 单个功能
- 功能交互
- 接口验证
- 易用性测试
- 兼容性测试:APP(平台、厂商、系统版本、分辨率)、WEB(浏览器、操作系统、分辨率)、本应用版本升级兼容
- 性能测试:服务器性能(并发)、APP性能(耗电量、流量消耗)
- 安全性测试:注入攻击、加密、权限
- APP测试要点:系统权限(隐私权限的获取)、网络(2G、3G、4G、5G)、中断(应用切换中断);
- web权限:链接测试、多个浏览器同时访问;
白盒测试方法论
- 语句覆盖:每行代码都要覆盖至少一次
- 判定覆盖:判定表达式的真假至少覆盖一次
- 判定/条件覆盖:判定覆盖与条件覆盖都必须覆盖
- 条件组合覆盖:判定表达式中的所有条件组合都需要覆盖
- 分支覆盖:控制流中的每条边都要被覆盖一次
- 路径覆盖:所有的路径都要尽量覆盖
- 指令覆盖:一行代码会被编译为多条指令,尽可能的覆盖所有指令
- 方法覆盖:每个方法至少要被覆盖一次
- 类覆盖:每个类至少被覆盖一次
工具:jacoco
业务架构
工具:plantuml(时序图、各种图)
- UML:统一建模语言
- plantuml:第三方插件工具
- plantuml 官网:使用简单的文字描述画UML图的开源工具。
- plantuml 中文文档:plantuml中文文档
- plantuml 在线绘图地址:https://plantuml.ceshiren.com/
bug的定义:
如果开发人员认为你提交的bug不是bug怎么办?
- 描述不清晰——则需要完善bug的提交内容
- 偶现——提交日志,找到记录,尽量浮现
- 有争议的bug——和产品及开发人员讨论,一起确定是否要修复;
- 理解不一致——沟通说明需求预期;