初入职场接触功能测试老是碰到以下情况不知道怎么写测试用例:

一个界面很多搜索条件怎么写用例?下拉框测试如何考虑测试点?上传要考虑哪些验证点?......

所以这篇主要是整理关于web测试之表单、搜索测试的相关要点。

1、表单测试

表单一般指在界面进行数据提交操作的,包括新增和修改数据。例如注册

它涉及到的测试包括以下方面,每个点的验证都要考虑有效及无效输入的情况:

1)输入框测试 ——长度、数据类型、必填、重复、空格、sql注入以及一些业务相关约束;

2)下拉框测试 ——默认值、数据完整性/正确性、第一个/最后一个/中间一个选取、手动输入值模糊匹配、联动选择;业务常见选取的操作;

3)图片、视频、excel、txt等文件上传测试 ——大小、尺寸、格式、数量、文件内容规则验证;

4)表单提交按钮测试 ——是否支持回车/单击、快速多次点击是否重复提交表单、网络中断(弱网)提交、提交之后是否有提示、提交后内容是否加密、提交是否做权限校验控制、多人针对表单同时操作的场景测试

2、搜索测试

搜索条件一般主要包含2种:输入框搜索条件、下拉框搜索条件。

对于多个条件的页面搜索可以按照下面的编号顺序去进行测试(假设搜索条件为4个):

1)任单个条件查询:正常输入搜索、模糊搜索、超长搜索、不存在与之匹配的条件、为空;

2)任两个组合查询:确保任两个组合查询的正确性验证,验证两个组合的所有情况;

3)三个组合查询:不需要测试三个组合的全部级组合。因为前面针对所有单个条件的搜索、两个组合的所有组合进行测试了,那么在这里选择2-3组三种组合进行测试即可;

4)全条件组合查询:确保最大组合的正确性;

5)默认条件查询:补充默认条件查询的用例;

6)根据需求或者业务规则选取重点条件组合查询,如果此点与第1)2)3)4)重复,不需重复测试。

在这里再给大家普及下,搜索框搜索还有一种常见的情况就是:时间输入框 关于按时间来搜索的测试点,可以从以下考虑:

1)开始时间=结束时间,验证一天范围的数据;

2)开始时间<结束时间,验证跨天、跨月、跨年的数据;

3)开始时间大于/小于当前时间,若是针对出生年月搜索,验证大于的情况;若是定时任务时间搜索验证小于的情况;

4)只输入开始时间或者只输入结束时间;开始时间和结束时间都不输入;

5)结束时间早于开始时间,验证系统是否给予合理提示;

6)验证是否支持手动输入时间,并注意时间格式验证例如20180612格式

一般搜索主要应用在报表数据,所以还有一个需要关注的功能:翻页

1)首页、上一页、下一页、尾页功能验证;注意下首页情况下,上一页是否支持点击;尾页情况下,下一页是否支持点击;

2)总页数、当前页数正确性验证;

3)指定跳转页验证;例如输入8,点击跳转那么是否能正常跳转到第8页的数据;且还注意下跳转的有效范围是1-总页数 ;所以我们考虑1、最大页数的有效值验证,且也需要考虑0、总页数+1、负数、小数、非数字、空的异常值验证

~~更多关于测试过程中的用例相关问题欢迎留言,也欢迎加右上角群号一起讨论~~

web功能测试之表单、搜索测试的更多相关文章

  1. web前端----html表单操作

    form表单 功能:表单用于向服务器传输数据,从而实现用户与Web服务器的交互 表单能够包含input系列标签,比如文本字段.复选框.单选框.提交按钮等等. 表单还可以包含textarea.selec ...

  2. web网页的表单排版利器--960css

    表单排版样式 960css 前言 一般web网页的表单排版,大家都习惯用table排版,自己需要根据实际需要去定义TR和TD,很多时候对于TD的高宽度.是否合并行,合并列,都要去做一些处理,这些都是比 ...

  3. ASP.NET Web Pages:表单

    ylbtech-.Net-ASP.NET Web Pages:表单 1.返回顶部 1. ASP.NET Web Pages - HTML 表单 表单是 HTML 文档中放置输入控件(文本框.复选框.单 ...

  4. Vue项目之实现登录功能的表单验证!

    Vue项目之实现登录功能的表单验证! 步骤: 配置 Form表单验证; 1.必须给el-from组件绑定model 为表单数据对象 2 给需要验证的表单项 el-form-item 绑定 prop 属 ...

  5. Django学习笔记(3)——表单,测试和模板语法的学习

    一,表单form 为了接收用户的投票选择,我们需要在前段页面显示一个投票界面,让我们重写之前的polls/detail.html文件,代码如下: <h1>{{ question.quest ...

  6. (数据科学学习手札112)Python+Dash快速web应用开发——表单控件篇(上)

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 这是我的系列教程Python+Dash快速web ...

  7. 解决表单(搜索框)回车的时候直接提交了表单不运行js的问题

    我想在搜索输入框中输入关键词后回车,先运行一段js,然后在提交表单,而默认情况下回车的时候也会出发表单的提交所有没法等js运行完成,故利用 onkeydown="if(event.keyCo ...

  8. .net web 开发平台- 表单设计器 一(web版)

    如今为了适应需求的不断变化,动态表单设计器应运而生.它主要是为了满足界面的不断变化和提高开发速度.比如:一些页面客户可能也无法确定页面的终于布局,控件的位置,在哪种情况下显示或不显示等可能须要随时改动 ...

  9. java web 解决Form表单乱码问题

    JSP和Servlet的六种中文乱码处理方法 一.表单提交时出现乱码: 在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式. ...

随机推荐

  1. Mac appStore下载软件报500错误的解决方法

    Step1.打开"启动台": Step2:打开"其他": Step3:打开"终端": Step4:复制如下代码,主要不要作任何更改,不要有多 ...

  2. EF框架和Ado.Net的使用比较

    1.性能上(运行效率) Ado.Net的性能更高些,直接使用SQLHelper的Command.Connection等命令通过写SQL语句对数据库进行操作.(EF的实体模型,性能上肯定要损失些!!) ...

  3. Laravel用post提交表单常见的两个错误

    最近在自学Laravel,测试用post方法提交表单时碰到两个错误: 1.获取传入的值时,报错如下图所示: 在stackFlow找答案时各种解释都有,但认真读一下报错信息,意思大概是:获取Http传入 ...

  4. HDU 3533 Escape(大逃亡)

    HDU 3533 Escape(大逃亡) /K (Java/Others)   Problem Description - 题目描述 The students of the HEU are maneu ...

  5. anaconda中安装TensorFlow的方法

    作为一个新手党加手残党真的折腾了好久才搞定,记录一下. step1:在anaconda prompt终端中输入 pip3 install -i https://pypi.tuna.tsinghua.e ...

  6. PHP curl Post请求和Get请求~

    //获取的参数 $api_key = '8a82d53a57b06c1d835d129f7e43d49c'; $orderNum = pdo_fetch('select ddlm_order_no f ...

  7. UP_GetRecordByPage

    CREATE PROCEDURE [dbo].[UP_GetRecordByPage] @tblName varchar(255), -- 表名 @fldName varchar(255), -- 主 ...

  8. Linux 之CentOS7-VSFTP搭建

    环境 1.俩台Linux 虚拟机 Ser 和 Cli 安装 [root@jm ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-10.el7.x86_64.rpm   / ...

  9. git删除远程分支,删除本地分支

    远程 # git push origin --delete duck - [deleted] duck 本地 # git branch -d duck 已删除分支 duck(曾为 dda11b8). ...

  10. Halcon 标定与准确测量