web测试中,各类web控件测试点总结

一、界面检查

进入一个页面测试,首先是检查title,页面排版,字段等,而不是马上进入文本框校验

1、页面名称title是否正确

2、当前位置是否可见 您的位置:xxx>xxxx

3、文字格式统一性

4、排版是否整齐

5、列表项显示字段是否齐全,列表项字段名称是否跟表单统一

6、同一页面,是否出现 字段名称相同、值取不同的问题。

7、数据加载情况:

除了文本框的值,还要注意:

复选框,是否保存打√,或者保存不打√

下拉框,是否保存选择的值

多文本框,值是否都被保存,空格,换行是否保存

二、单文本框(type=text)

边界:字段长度

判空:是否可以为空

唯一性:是否唯一(小归结:边界、判空、唯一性、特殊字符、正确性)

考虑语言,操作环境

1)特殊符号测试输入

’ or 1<>‘1’ or ‘1’=‘1’ or ‘1’<>'2"|?><

where a='xxx’下划线是否允许输入全部空格 输入 单引号

>

2)特殊字段输入限定

框内容是否合法(tel,ip,url,email)序号等,直接限制输入数字,其他过滤掉。输入金额文本框,整数首位为0,过滤掉,小数点后面,一般保留两个有效数字。

正确性测试(必不可少的步骤)

字段长度输入最大允许长度时)数据允许长度的测试。

a、页面是否被挤出的测试(都输入长英文字符串,是否断行;

b、数据库是否允许最大字符(都输入汉字、都输入英文、混合……;

c、最短长度的正确流程,最大长度的正确流程覆盖。

对于允许为空的字段,不填入,再次数据传递后,看是否报500错误。

未规定字段长度(或者数值大小),不按死板输入,输入非常多字符(或者非常大的数值)时,做允许动作的正确性校验,看是否报错。

注意:通过不断输入长字符串,看是否有长度校验。终都会出现以下两种情况的一种:

A、页面(前台)有校验长度、大小;

B、无校验,数据库报错。

所以,所有字段都要做长度、大小限制(不管需求有没有给出明确要求,不管测试颗粒度,都要限制长度,不允许报数据库错误,都要测!!!)

另外,最大长度限制可限定方法:

1)不允许再输入;

2)自动截断处理,并且给用户提示。

关于长度概念

1)数据库规定的字节长度A

2)页面上可以输入的字符数B

控制方法

1)页面上,不管输入什么字符(全角如汉字、半角如字母),统一规定不能超过B个字符,此种限制,测试点主要有:

a. 全部输入全角B个,测试(B*3字节)会不会超过数据库字节长度

b. 全部输入半角B个,测试(B*1字节)会不会超过数据库字节长度

c. 混合输入全角X半角Y,测试(X*3+Y字节)会不会超过数据库长度

2)页面上,不以字符统计,以总的输入字节数统计,比如,全部输入全角字符,允许可以输入A/3个字符,全部输入半角字符,允许输入A个字符。

d. 测试点:全部输入全角,看是否允许输入A/3个字符

e. 全部输入半角,看是否允许输入A个字符

f. 混合输入全角X,半角Y,看是否允许X*3+Y=A

(5个:判空、唯一、边界值、特殊字符、正确流程(多种数据、多种分支))

3)测试校验位置:ajax鼠标事件校验、前台提交按钮js校验,服务器拿到数据后再次验证

三、多文本框(type=textarea)

1)空格和换行的问题

看需求,是否需要做支持HTML Encoding。

输入全部空格时,是否判空处理;

输入折行,是否也显示折行;

比如:列点说明原因,就需要支持。

2)字母截断的问题

对于一串字母,开发人员往往会忘掉做截断,这样如果展示在我们的平台上的话,这一串字母就会把我们的UI撑开

3)长度控制格式

您还可以输入***个字符

四、添加按钮

添加动作检查范围:

失败:是否提示?提示内容是否正确?保存用户已输入的内容,避免重新再输入?

成功:对话框消失

记录是否可直接查看(还需要刷新?)

列表记录顺序

重复提交情况,点击一次后,是否变成disable

上传附件的添加

A.文件名称:文件名称很长;文件名称字符多样化(汉字,英文,符号);文件名称重复。

B.判空?

C.附件格式类型支持?

D.附件个数?

E.附件空间大小。

五、移除按钮

1)一般都要在前台先给出一个提示操作“确定移除该……”

2)相关联的东西,是否需要限制移除“该类型下存在应用,无法移除”有到后台比较

3)确定后,真正执行移除操作。

结果:

移除后,列表数据是否立即消失;

必须有确认删除的提示信息。

六、列表

1)列表记录顺序

2)是否需要翻页、有没有翻页功能

3)字段名称是否与表单一致

七、搜索-文本框

1、功能点、需求点考虑:

是否提供模糊查询、输入数值有种类有限定时,是否考虑换成下拉框搜索;

2、检查点:

文本框值是否消失(是否回填条件值),再次点击“查询”可查看所有记录;

考虑搜索结果:是否存在分页,分页是否正常;是否有序;

注意:分页是否仍保存查询条件,检查后面的记录是否符合条件

3、查询数据多样性:

输入不存在的字段值测试、包括特殊字符查询测试例如:’ or ‘1’='1;

输入类似程序语句的条件时是否执行查询,如:XXXX”、XXX and ;

4、操作类型:

1)不输入的查询

2)输入全部空格的查询

3)模糊查询(输入部分字段,或者说,输入英文字母,查询到相关中文数据)

4)输入不存在的查询

5)输入存在的查询

6)单个查询和多个条件复合查询。

八、搜索-下拉框

a)搜索结果是否有序;

b)下拉框值是否齐全;(下拉框值本身也是一个动态查询的结果)

c)下拉框值是否自动消失,再次点击“查询”可查看所有记录(是否要回填条件值);

d)分页时,是否保存搜索条件(从UI、开发、业务逻辑、用户使用等角度测试);

九、归纳总结

上述内容是比较纯粹的从页面控件角度测试点出发,对于完整测试一个整体页面,需要各类测试有机结合起来。

1)UI测试

页面布局; 页面样式检查;控件长度是否够长;显示时,是否会被截断;支持的快捷键,Tab键切换焦点顺序正确性等。

2)功能测试:页面上各类控件的测试范围,测试点,可参考上方

结合控件的实际作用来补充检查点: 比如, 密码框是否*显示, 输入是否做trim处理等

3)安全测试:输入特殊字符,sql注入,脚本注入测试

后台验证测试,对于较重要的表单 ,绕过js检验后台是否验证

数据传输是否加密处理,比如, 直接请求转发,地址栏直接显示发送字符串?

数据库存储,特别密码等,是否加密形式存储

4)兼容性测试

5)性能测试

文章来源:网络 版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/11803.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【--ckpt_save_interval 1 -- sync_bn】

在深度学习和机器学习的上下文中&#xff0c;–ckpt_save_interval 1 和 --sync_bn 是命令行参数&#xff0c;它们通常用于配置训练过程。 不过&#xff0c;这两个参数并不是所有框架或工具都通用的&#xff0c;但我可以根据常见的用法来解释它们。 --ckpt_save_interval 1这…

人力资源管理:员工体验平台设计

员工体验是员工的感受&#xff0c;是员工作为企业一份子观察到、感受到和与之互动的一切&#xff0c;包含企业为员工提供的物质条件、人文环境等各方面的内容。 是在工作过程中接触到的所有接触点所产生的对自己与用人单位关系的整体感知&#xff0c;员工体验从员工入职开始贯…

使用Go和JavaScript爬取股吧动态信息的完整指南

引言 在现代金融生态系统中&#xff0c;信息流动的速度和效率对于市场的健康和投资者的成功至关重要。股市信息&#xff0c;特别是来自活跃交流平台如股吧的实时数据&#xff0c;为投资者提供了一个独特的视角&#xff0c;帮助他们洞察市场趋势和投资者情绪。这些信息不仅能够…

【MySQL】分组排序取每组第一条数据

需求&#xff1a;MySQL根据某一个字段分组&#xff0c;然后组内排序&#xff0c;最后每组取排序后的第一条数据。 准备表&#xff1a; CREATE TABLE t_student_score (id int(11) NOT NULL AUTO_INCREMENT COMMENT ID,stu_name varchar(32) NOT NULL COMMENT 学生姓名,course…

NumPy常用操作

目录 一&#xff1a;简介 二&#xff1a;NumPy 常用操作 三&#xff1a;总结 一&#xff1a;简介 是一个开源的Python库&#xff0c;它为Python提供了强大的多维数组对象和用于处理这些数组的函数。NumPy的核心是ndarray&#xff0c;它是一个高效的多维数组容器&#xff0c;用…

力扣【旋转函数】python

如果直接用暴力的话&#xff0c;只能过4个样例好像&#xff0c;超时 因此得用递推公式 F1F0前n-1个数-(n-1)*第n个数 F0sum(nums)-n*第n个数 nlen(nums) ans[]#定义一个存最大值值的列表 ss sum(nums) dm 0 for j in range(n):dm j * nums[j] ans.append(dm) print(dm) n…

springmvc返回json

springmvc返回json 现在很多项目已经前后端分离了&#xff0c;不再使用jsp或者使用jsp但是数据使用ajax来获取&#xff0c;实现局部刷新的效果&#xff0c;那么springmvc中如何不返回页面而返回页面所需要的数据呢。 前后端数据交互现在大多使用json来表示(当然有一部分还是使用…

面试中的算法(查找缺失的整数)

在一个无序数组里有99个不重复的正整数&#xff0c;范围是1~100&#xff0c;唯独缺少1个1~100中的整数。如何找出这个缺失的整数? 一个很简单也很高效的方法&#xff0c;先算出1~100之和&#xff0c;然后依次减去数组里的元素&#xff0c;最后得到的差值&#xff0c;就是那个缺…

目标检测YOLO实战应用案例100讲-基于深度学习的无人机航拍图像目标检测算法研究与应用(中)

目录 4.2旋转角度 4.3数据集预处理 4.4旋转框网络结构设计 4.5实验结果与分析

集合系列(二十五) -二叉树、平衡二叉树、红黑树性能总结

一、摘要 二叉树&#xff0c;作为一种数据结构&#xff0c;在实际开发中&#xff0c;有着非常广泛的应用&#xff0c;尤其是以平衡二叉树、红黑树为代表&#xff0c;在前几篇文章中&#xff0c;我们详细的介绍了BST、AVL、RBT的算法以及代码实践&#xff0c;下面简要概括描述一…

deveco studio 打开官方案例,不显示运行按钮。

就拿官方的search举例好了 git 地址 https://gitee.com/harmonyos/samples/tree/master/ETSUI/Search 使用deveco studio打开Search项目&#xff0c;打开Tools->Device-Manager中的Local Emulator本地模拟器&#xff0c; 此时会发现&#xff0c;运行按钮是灰色的&#xff0…

水利行业工程设计资质如何去申请

申请水利行业工程设计资质通常需要按照以下步骤进行&#xff1a; 事前准备&#xff1a; 制定材料清单&#xff0c;罗列出所需准备的文件。下载相关的申请表和模板。准备企业资料和人员资料等附件材料。人员要求&#xff1a; 确保企业拥有符合水利行业工程设计资质标准要求的注…

源码 axios 的创建过程模拟实现

1、在实例对象上添加两个属性&#xff1a;default(默认配置) 与 interscptors // //构造函数function Axios(config) {//初始化this.defaults config;//为了创建 default 默认属性this.interceptors {request: {},response: {}}} 2、在原型对象上添加方法 //原型添加相关的…

从零学算法994

994. 腐烂的橘子 在给定的 m x n 网格 grid 中&#xff0c;每个单元格可以有以下三个值之一&#xff1a; 值 0 代表空单元格&#xff1b; 值 1 代表新鲜橘子&#xff1b; 值 2 代表腐烂的橘子。 每分钟&#xff0c;腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。 返回 直…

微信小程序中的数据可视化组件封装艺术【附代码】

微信小程序中的数据可视化组件封装艺术 一、数据可视化的魅力与重要性数据可视化简述为什么要在小程序中封装数据可视化组件 二、微信小程序数据可视化基础小程序中的绘图工具&#xff1a;Canvas 三、实战&#xff1a;封装一个简易折线图组件设计思路组件结构&#xff08;line-…

java mybatis配置

MyBatis是一种支持自定义SQL、存储过程和高级映射的持久层框架。下面是一个简单的Java MyBatis配置示例&#xff1a; 首先&#xff0c;需要添加MyBatis的依赖到项目的pom.xml文件中&#xff1a; <dependency><groupId>org.mybatis</groupId><artifactId…

Python3 笔记:顺序结构

三种程序执行结构&#xff1a;顺序结构、选择结构和循环结构。 这三种结构对应的是&#xff1a;顺序执行所有的语句、选择执行部分语句和循环执行部分语句。 顺序结构是程序最基本的结构。就是程序按照语句顺序&#xff0c;从上到下依次执行各条语句。 例如&#xff1a; nu…

【运维实践项目|003】:Nginx集群化运维升级项目

项目名称 项目简称或代号&#xff1a;SUN项目&#xff08;这个可以自己随便编一个&#xff0c;每个公司的每个项目简称或代号都是内部任意起名的&#xff0c;显得专业一点&#xff0c;一般是项目关键词的首拼&#xff0c;比如这个CSUN是&#xff1a;ScaleUp Nginx&#xff09;…

一道dp错题

dis(a,b)就是两点之间的距离公式 那么这道题该怎么解呢,.先看数据范围x,y<1e4,so,18个点两点之间距离最大18*1e4*sqrt(2)<2^18,所以如果跳过的点大于18个点,那么显然一个区间内最多不会跳跃超过17个点 现在我们想知道前i个点跳跃几次在哪跳跃能够达到最小花费,不妨设跳…

【OceanBase诊断调优】—— 转储错误(错误代码 4138/ORA-01555)

当读事务很长时&#xff0c;租户进行转储会报 4138/ORA-01555 错误。本文介绍该错误的处理方法。 适用版本 OceanBase 数据库 V2.X 及以后的版本 问题现象 当读事务很长&#xff0c;租户进行转储时会出现以下错误。 Oracle 租户&#xff1a; ORA-01555&#xff1a;snapsho…