一、软件测试周期
需求评审、整理测试计划和测试方案、需求分析提取测试用例(测试点)、等待提测、冒烟测试、一轮测试、二轮测试、三轮测试、回归测试、提交测试报告
二、测试计划和测试方案怎么写
测试计划:
测试范围、提测时间、测试用例计划时间、测试计划开始时间、测试计划结束时间、测试人员等
测试方案:
测试背景、测试策略、测试范围、测试时间、测试标准等等
三、测试用例
包括的内容:
用例ID
测试功能
测试角度概述
测试角度详述
测试级别
测试类型
测试步骤
预期结果
实际结果
测试结论
测试数据
截图
备注
设计测试用例的方法:
等价类划分法:把所有可能输入的数据分为若干个区域,然后从每个区域中取少量具有代表性的数据进行测试即可。例如用户名输入最大长度限制在10,测试正常情况为6即可,6就代表了1-10
因果图法:因果图法比较适合输入条件比较多的情况,测试所有的输入条件的排列组合。输入内容和预期结果验证,例如输入用户名密码,点击登录,预期结果是成功
正交法
错误推测法:预期结果为错误,创造错误条件,例如输入错误的用户名密码
边界值法:取稍高于或稍低于边界的一些数据进行测试。例如用户名输入最大长度限制在10,则测试长度9,10,11即为边界值法
场景设计法:例如筛选商品、加入购物车、结算、查看订单,为一个正常场景
判定表:
判定表定义:
分析和表述若干输入条件下,被测对象针对这些输入做出的相应一种工具在遇到复杂业务逻辑时可以利用该表理清业务逻辑关系
条件:
- 条件桩 需求规格说明书定义的被测对象的所有输入
- 条件项 针对条件桩所有可能的输入数据的真假值
动作:
- 动作桩 针对条件被测对象可能采取的所有操作
- 动作项 针对动作桩,被测对象响应的可能取值
规则:
- 动作项和条件项组合在一起,形成的业务逻辑处理规则。
示例:
抬头正确、金额正确才允许开发票
1 | 2 | 3 | 4 | |
条件1:抬头 | Y | Y | N | N |
条件2:金额 | Y | N | Y | Y |
动作1:开发票 | Y | |||
动作2:不开发票 | N | N | N |
错误推测法:基于经验和直觉推测程序中可能发送的各种错误
四、测试报告
结束测试,所有的bug关闭或者确认好有bug延迟处理,回归测试通过,可发布测试报告
测试报告内容包括:测试背景、测试环境、测试内容、测试用例执行情况、测试结果分析(包括总bug统计、重点bug分析)、测试结论、测试建议等等
五、测试执行阶段的注意点
1、怎么判断冒烟测试是否通过?
主流程是通的,主流程是否有阻塞
新提交的功能是通的,不阻塞
2、测试过程中遇到阻塞怎么办,怎么判断每一轮测试结束,在什么阶段验证bug?
小阻塞,例如某个小功能不通,可提交bug,下个轮次再进行验证测试
阻塞功能较多,打回,待开发重新提测后,再进行测试
将所有的功能测试完成,bug提交完毕,即为该轮次结束
每个轮次提测后,先验证上一轮的bug,再进行新功能的测试
六、常用的表单测试方法
1、字符串输入检查:
输入字母
输入数字
输入中文
输入一般符号:~!@#$%^&*()_+{}[]:"<>?
输入特殊字符:如插入word特殊符号
输入空格
输入为空
输入退格符
输入换行符
输入tab符
输入ASCII码转义字符:\n,\t,\b...
输入数据库关键字:select,and,top...
输入超文本标记语言:<head>,<table>,<title></title>...
输入CSS文本标记:<div id=##></div>
输入临界值长度的字符串
输入超过临界值长度的字符串:超长提示方式统一
2、数值输入检查:
正常值
最大值
最小值
越界值
0,-0,00,000...
负数
小数:0.0,超长小数,负小数...
非数值字符:字母,汉字,符号...
3、格式检查:
电话号码格式检查:只接受数字,数字长度有限制
电子邮件格式检查:合法输入,输入非法时提示增却
图片格式格式检查:合法格式的图片,非法格式的图片可被正确处理
文件格式检查:只接受规定格式的应用文件,非法格式的文件可被正确处理
网址格式检查:输入合法网址,输入非法网址(如含特殊字符)时可正确处理
邮编格式检查:只接受数字,数字长度有限制
身份证号码格式检查:只接受数字,数字长度有规定
4、关键词检查:
关键词输入不可重名
关键词输入重名时可正确处理
将某已存在的关键词修改为与其它关键词重名时,可正确处理
5、相关性检查:
检查表单中“与其它页面的显示数据相关联”的项目:增加/删除/修改该项后,对相关联项的影响是否正常
6、数据库修改检查:
检查表单中的数据是否与数据库中一致
检查数据库中的数据更新后,表单中的数据是否同步更新
例如:
检查下拉列表中的数据是否和服务器端一致
检查服务器端的数据更新后,下拉列表中的数据是否同步更新
检查更新后的列表数据显示是否合理
7、必填项检查:
正常输入
不输入:可正确处理
8、上传/下载检查:
上传/下载的文件可以正常显示/打开
文件格式是否有限制
文件大小是否有限制
9、提交检查:
按要求填写表单数据后,提交,检查表单信息是否被正确保存
按要求填写表单数据后,放弃提交,表单信息不会被保存
不按要求填写表单数据时,提交,检查表单信息是否可以保存
对同一条数据进行多次提交时(提交->BACK->再提交->...),可正确处理
七、bug管理
使用工具:禅道、redmine、jira等
Bug流转:
BUG等级分类
致命(一级bug)
阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题。如:代码错误、死循环、数据库发生死锁、重要的一级菜单功能不能使用等。阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题。如:代码错误、死循环、数据库发生死锁、重要的一级菜单功能不能使用等
严重(二级bug)
系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他功能的测试。功能设计与需求严重不符,模块无法启动或调用,程序重启、自动退出,关联程序间调用冲突,安全问题、稳定性等。如:软件中数据保存后数据库中显示错误,用户所要求的功能缺失,程序接口错误,数值计算统计错误等。系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他功能的测试。功能设计与需求严重不符,模块无法启动或调用,程序重启、自动退出,关联程序间调用冲突,安全问题、稳定性等。如:软件中数据保存后数据库中显示错误,用户所要求的功能缺失,程序接口错误,数值计算统计错误等
一般(三级bug)
功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统稳定性。如:操作时间长、查询时间长、格式错误、边界条件错误,删除没有确认框、数据库表中字段过多等。功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统稳定性。如:操作时间长、查询时间长、格式错误、边界条件错误,删除没有确认框、数据库表中字段过多等
次要(四级bug)
界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案等。如:错别字、界面格式不规范,页面显示重叠、不该显示的要隐藏,描述不清楚,提示语丢失,文字排列不整齐,光标位置不正确,用户体验感受不好,可以优化性能的方案等。界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案等。如:错别字、界面格式不规范,页面显示重叠、不该显示的要隐藏,描述不清楚,提示语丢失,文字排列不整齐,光标位置不正确,用户体验感受不好,可以优化性能的方案等