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

一 、界面检查

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

1、页面名称title是否正确

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

3、文字格式统一性

4、排版是否整齐

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

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

7、数据加载情况:除了文本框的值,还要注意:

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

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

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

二、单文本框(type=text)

边界:字段长度

判空:是否可以为空

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

考虑语言,操作环境

特殊符号测试输入:

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

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

><script>alert(“123”);</script>>

特殊字段输入限定:

框内容是否合法(tel,ip,url,email)序号等,直接限制输入数字,其他过滤掉

输入金额文本框,整数首位为0,过滤掉,小数点后面,一般保留两个有效数字。

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

1)、(字段长度输入最大允许长度时)数据允许长度的测试:

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

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

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

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

3)、未规定字段长度(或者数值大小),不按死板输入,输入非常多字符(或者非常大的数值)时,做允许动作的正确性校验,看是否报错。(要达到的结果:不管有没有长度限制(没有给最长、最大限制让你去测?),最终页面不能抛数据库异常。)monkey test

说明:通过不断输入长字符串,看是否有长度校验;

最终都会出现以下两种情况的一种:

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

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

所以: 所有字段都要做长度、大小限制(不管需求有没有给出明确要求,不管测试颗粒度,都要限制长度,不允许报数据库错误,都要测!!!)。最大长度限制可限定方法:1、不允许再输入;2、自动截断处理,并且给用户提示

关于长度概念:

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

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

控制方法:

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

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

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

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

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

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

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

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

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

+测试校验位置: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、开发、业务逻辑、用户使用等角度测试)

PS:

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

1)UI测试:

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

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

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

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

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

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

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

4)兼容性测试

5)性能测试

还有各类其他控件,待小结, 欢迎评论指正,谢谢O(∩_∩)O

上一篇:myeclipse中格式化代码快捷键的问题解决方案和的用法


下一篇:Android简易注解View(java反射实现)