测试用例设计步骤
- 划分功能模块
- 正向功能验证
- 单个功能项验证
- 功能之间交互验证
- 隐形需求
测试用例设计实战
测试用例评审
- 测试用例的本身的描述是否清晰,是否存在歧义
- 测试用例内容是否正确,是否与需求目标相一致
- 测试用例的期望结果是否确定、唯一
- 测试用例是否覆盖了所有的需求
- 测试用例是否具有可执行性
- 是否从用户层面来设计用户使用场景和业务流程的测试用例
- 场景测试用例是否覆盖最复杂的业务流程
- 用例设计是否包含了正面、反面的用例
web 测试用例设计总结
bug 定位
- 前端问题:查看源码
- 通过网络数据定位:抓取网络数据分析
- 后台错误:分析日志
浏览器开发者工具
Elements 面板
- 定位元素
- 查看元素源码
- 查看元素样式
- 页面跳转到元素面板指定的元素
Network
- 记录网络活动
- 清除缓存
- 模拟网络
- 查看网络数据
- 搜索网络数据
- 筛选资源
- 资源排序
浏览器兼容
操作系统
分辨率
兼容测试工具
- IETester:可以方便的解决IE浏览器的兼容问题
- Browsershots:一个在线测试工具,支持很多浏览器
- 开发者工具 - Toggle device toolbar
Toggle device toolbar
- 模拟移动设备界面
- 自定义设备
- 旋转屏幕
- 生成页面快照
- 显示标尺
- 缩放视图
- 限制网络流量和 CPU 占用率
性能测试
- web 页面响应时间
- 负载测试:测量 Web 系统在某一负载级别上的性能,以保证 Web 系统在需求范围内能正常工作
- 压力测试:测试 Web 应用系统会不会崩溃,在什么情况下会崩溃
- 测试方法:
安全测试
- SQL 注入:将 SQL 语句添加到输入参数中,传递到服务端解析并执行的一种攻击手法
- XSS 跨站攻击:恶意攻击者往 web 页面插入恶意脚本代码
null
NULL
javascript
<script></script>
<title>
<html>
<script>alert("abc")</script>
doucment.write("abc")
<b>hello</b>
1’ order by 1 #
1' or '1'='1
' or 1=1#
测试报告模板
总结要点
- 人力投入
- 用例覆盖情况
- Bug 的分类及数量统计
- 遗留 Bug 情况
- 测试风险
- 测试结论
课后作业
- 补充企业微信 web 版添加成员模块的测试用例(xmind)