功能测试包含哪些测试?功能测试主要包括链接测试、表单测试、搜索测试、删除测试、cookies、session测试、数据库测试等部分。功能测试对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。功能测试包含哪些测试?分别有什么作用?接下来我们具体了解一下:
一、链接测试
测试所有链接是否按指示的那样确实链接到了该链接的页面;测试所链接的页面是否存在;测试web应用系统上没有孤立的页面。
二、表单测试
表单一般指在界面进行数据提交操作的,包括新增和修改数据。它涉及到的测试包括以下方面:
1、输入框测试,长度、数据类型、必填、重复、空格、sql注入以及一些业务相关约束
2、下拉框测试,默认值、数据完整性/正确性、第一个/最后一个/中间一个选取、手动输入值模糊匹配、联动选择;业务常见选取的操作
3、大小、尺寸、格式、数量、文件内容规则验证
4、表单提交按钮测试,是否支持回车/单击、快速多次点击是否重复提交表单、网络中断(弱网、提交、提交之后是否有提示、提交后内容是否加密、提交是否做权限校验控制、多人针对表单同时操作的场景测试
三、搜索测试
搜索条件一般为2种情况:输入框、下拉框。对于多个条件的页面搜索可以按照下面的编号顺序去进行测试。
1、任单个条件查询:模糊搜索、超长搜索、不存在与之匹配的条件、为空
2、任两个组合查询:确保任两个组合查询的正确性,验证两个组合的所有情况。
3、三个组合查询:不需要测试三个组合的全部级组合。因为前面针对所有单个条件的搜索、两个组合的所有组合进行测试了,那么在这里选择2-3组三种组合进行测试即可。
4、全条件组合查询:确保最大组合的正确性。
默认条件查询:补充默认条件查询的用例
5、根据需求或者业务规则选取重点条件组合查询
搜索框搜索还有一种常见的情况就是:时间输入框,按时间来搜索的测试点,可以从以下考虑:
1、开始时间<=结束时间,测试一个小时、跨时、当天、跨天、跨月、跨年的数据
2、开始时间大于/小于当前时间,若是针对出生年月搜索,验证大于的情况;若是定时任务时间搜索验证小于的情况
3、只输入开始时间/结束时间
4、开始时间、结束时间都不输入
5、结束时间早于开始时间
6、手动输入时间,注意时间格式验证
四、删除测试
1、没选择数据,点击删除,是否有友好提示?
2、选择一条数据,点击删除,是否提示删除确认信息,需二次确认?
3、删除一条数据后,点击添加,是否可以添加相同的数据
4、连续删除多个产品,选择批量删除;是否支持?
5、选择全选,点击删除,注意是否把所有的数据删除?
6、删除一个有关联性的数据,如删除QQ分组,组下好友会有提示?
7、所有删除数据操作,要注意相应查询页面及其关联界面的数据是否及时更新
五、cookies/session测试
cookies/session通常用来存储用户信息,Cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份。
cookies/session测试同理,测试的内容可包括:
1、打开WEB系统后,在浏览器默认存储cookies的目录下看此cookies目录是否存在。
2、已知cookies的保存时间,测试时间范围之内和之外的cookies文件是否正常
3、将浏览器下的所有cookies文件全部删除。再次登录web系统,会怎么处理
六、数据库测试
在web应用技术中,数据库就是一个“仓库”,我们在进行功能测试的任何操作都可以归溯到是对于数据库的增删改查。数据库测试实际就是通过前面讲过的测试手段来完成、只不过关注点是数据库表及表字段值的变化。
1、数据库脚本执行—数据库表添加、修改是否正常
2、页面提交表单、修改、查询、删除 —数据库表信息是否正常