功能测试

一、UI界面测试

  • 布局合理性

需求UI原型布局合理性评估、实际样式布局合理性评估,会不会不对齐、大小不一导致不美观甚至出现用户操作困难的情况。

  • 与设计是否一致

UI布局是否与设计稿一致,出现新布局样式与开发人员及时确认,会不会出现控件互相遮挡影响阅读与功能

  • 功能定位准确性

页面控件的命名与选择是否合理,是否有选取合适的控件,各个控件的命名是否准确,如:取消与确认按钮命名是否与其功能一致,是否应该使用长文本输入框还是短文本输入框等等

  • 色调搭配合理性

1、页面颜色搭配是否符合审美,长期观看是否引起不适,会不会影响阅读,只读页面是否统一灰色背景

  • 字体

页面字体大小比例是否合适,是否有字体需要加粗或者灰度化等。是否出现错别字。

  • 分辨率影响

在业务范围内要求的分辨率下是否会产生页面变形,浏览器正常的缩小放大是否会对使用产生影响

  • 浏览器兼容性影响

在不同浏览器下页面各个控件是否显示正常,不同浏览器对应不同分辨率下是否有影响,需要测试的浏览器有:IE11chromefirefox,个别业务系统涉及到IE8适配

  • 特殊字符的显示

在系统要求的范围内,特殊字符的显示是否正常

  • 图片

图片的尺寸大小、位置合理性、对齐方式、排序等因素对UI界面的影响

  • 数据溢出框外

web网站,一般经常是后台控制前台的显示,因此在对后台进行数据添加时,查看前台是否有变化,并且查看界面的数据是否溢出框外。特别注意数据溢出对表单的形变影响。

二、控件类测试

  • 日期控件

日期选择控件是否可以正常选择想要的日期,快速的年月切换,会不会出现选择到不合理的时间比如今天之后的日期。日期是24小时制还是12,12小时制是否有am pm区别。

1、日期型输入框:

1)合法性检查:(输入0日、1日、32)、月输入[135781012]、日输入[31]、月输入[46911]、日输入[30][31]、输入非闰年,月输入[2],日期输入[2829]、输入闰年,月输入[2]、日期输入[2930]、月输入[011213]

 (2)异常值、特殊字符:输入空白或NULL、输入~@#%……&*(){}[]等可能导致系统错误的字符

3)安全性检查:不能直接输入,就copy,是否数据检验出错?

  • 只读控件

“查看”这种只读页面去点击输入框是否可以输入,如果不行尝试是否可以粘贴进去,点击控件是否会有反应。确保所有可操作点都不允许操作

  • 按钮控件

各个地方的按钮是否实现了我们想要的功能,多次快速点击按钮是否出现异常情况比如:页面报错,出现两条记录等,是否需要控制并发点击次数

  • 下拉控件

下拉是否影响页面形变,是否易选取内容,下拉内容显示是否完整, 上下选择方向键是否能用。

  • 输入框

输入内容类型、长度、特殊字符的验证,sql注入攻击对系统的影响,<> , . ; : 等相关会使用到的符号输入对页面的影响。长文本输入框换行是否可用

1、字符型输入框:

1)字符型输入框:英文全角、英文半角、数字、空或者空格、特殊字符“~@#%……&*[]{}”特别要注意单引号和&符号。禁止直接输入特殊字符时,使用粘贴、拷贝功能尝试输入。

2)长度检查:最小长度、最大长度、最小长度-1、最大长度+1、输入超工字符比如把整个文章拷贝过去。

3)空格检查:输入的字符间有空格、字符前有空格、字符后有空格、字符前后有空格

4)多行文本框输入:允许回车换行、保存后再显示能够保存输入的格式、仅输入回车换行,检查能否正确保存(若能,检查保存结果,若不能,查看是否有正常提示)、

5)安全性检查:输入特殊字符串(null,NULL, ,javascript,<script>,</script>,<title>,<html>,<td>)、输入脚本函数(<script>alert("abc")</script>)doucment.write("abc")<b>hello</b>

2、数值型输入框:

1)边界值:最大值、最小值、最大值+1、最小值-1 

2)位数:最小位数、最大位数、最小位数-1最大位数+1、输入超长值、输入整数 

3)异常值、特殊字符:输入空白(NULL)、空格或"~!@#$%^&*()_+{}|[]\:"<>?;',./?;:'-=等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如,㏒,㏑,+-等、

输入负整数、负小数、分数、输入字母或汉字、小数(小数前0点舍去的情况,多个小数点的情况)、首位为0的数字如0102、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币型输入(允许小数点后面几位)、

4)安全性检查:不能直接输入就copy

  • 图像上传类控件

对不图像分辨率大小、存储大小要求是否严格,针对不符合要求的图像如何处理,上传后显示的区域是否正常

1)文件类型正确、大小合适

2)文件类型正确,大小不合适

3)文件类型错误,大小合适

4)文件类型和大小都合适,上传一个正在使用中的图片

5)文件类型大小都合适,手动输入存在的图片地址来上传

6)文件类型和大小都合适,输入不存在的图片地址来上传

7)文件类型和大小都合适,输入图片名称来上传

8)不选择文件直接点击上传,查看是否给出提示

9)连续多次选择不同的文件,查看是否上传最后一次选择的文件

 

  • 滚动条

页面滚动条数量是否合理,是否有多余无用的滚动条存在,浏览器缩放页面内容显示不足时是否自动生成滚动条,滚动条对操作是否有影响。

  • 单选复选控件

控件功能是否正常,页面刷新、保存没保存是否正常勾选,页面嵌套弹层,跳跃式操作后保存是否正常勾选

  • 树形菜单控件

子父级是否划分明确,是否有限制层级数量,各个层级名称长度是否会影响整体机构形变

  • 控件关联

通过相关证件读取信息时,使用非该证件类型的号码是否可以读取出相关信息。比如:选择证件为身份证,输入手机号确读取出该病人的信息

  • 图表控件

是否能准确将数据在图表显示出需要的数据要求以及相关的操作

三、功能类测试

  • 分页功能

分页的相关按钮是否正常跳页;其他的操作会不会影响页面位置,比如:对该页的选项进行操作后是否还在当前页面会不会自动跳回到首页

  • 搜索功能

1、功能实现:

1)如果支持模糊查询,搜索名称中任意一个字符是否能搜索到

2)比较长的名称是否能查到

3)输入系统中不存在的与之匹配的条件

4)用户进行查询操作时,一般情况是不进行查询条件的清空,除非需求特殊说明。

2、组合测试:

1)不同查询条件之间来回选择,是否出现页面错误(单选框和多选框最容易出错)

2)测试多个查询条件时,要注意查询条件的组合测试,可能不同组合的测试会报错。

  • 刷卡功能

在通过读取证件的页面,输入证件号再关闭页面会不会也能读取处信息

  • 友好性提示

相关控件的信息输入错误,给予的提醒是否正确

  • 特殊字符输入

输入框要特别注意一下跟编程语言有关的符号常见的有:<> / () . ‘’ ; @ & * 等等。这些符号的显示是否正常会不会被强制转换成其他字符。比如:<>被转成\u0027

  • 时间计算

年龄、日期等相关差值的计算

  • 长文本显示处理

输入保存的字符长度过长的地方是否有预览办法

  • 地址匹配

地址的省市县不匹配时会不会有提示或者出现异常

  • 虚拟运营商号码段

联系电话填写的地方注意170171这种号码段

  • 键盘功能定义冲突

键盘操作时注意tabenter,↑,↓的功能是否正常,会不会起冲突。

  • 控件可操作范围控制

对于勾选框,可操作的区域是否正常,会不会出现在小方块外面点击也可以勾选起来的情况

  • 打印功能

对于打印页面重点关注与排版,显示是否有误,内容是否缺失

  • 只读操作

只读的位置是否不允许录入内容,是否有灰度背景区别

  • 文件导入

格式、大小、内容格式是否符合要求

  • 单功能测试

增加——>增加——>增加 (连续增加测试)

增加——>删除

增加——>删除——>增加 (新增加的内容与删除内容一致)

增加——>修改——>删除

修改——>修改——>修改 (连续修改测试)

修改——>增加(新增加的内容与修改前内容一致)

修改——>删除

修改——>删除——>增加 (新增加的内容与删除内容一致)

删除——>删除——>删除 (连续删除测试)

 

四、配置相关

  • 硬件配置

机器是否符合最低配置要求

  • 软件配置

软件是否支持适配,软件参数配置是否正确

  • 数据库配置

数据库字段定义是否完整,关联数据是否有关联配置

  • 服务器配置

服务器环境部署是否正确

  • 基础数据配置

基础数据是否完整录入数据库

五、标准规范

  • 输入规范

标准规范目前遇到的主要是格式问题,比如联系电话,日期,证件号等

  • 接口规范

接口传输脚本规范,是否有无用字段

  • 模版规范

基础数据模版,导入文件模版规范

六、其他

  • 流程

系统主流程、分支流程、异常流程验证

  • 安全相关

是否可以通过直接访问页面地址绕过密码验证,F12打开是否能查到输入的登陆信息等

1SQL注入(比如登陆页面)

2XSS跨网站脚本攻击:程序或数据库没有对一些特殊字符进行过滤或处理,导致用户所输入的一些破坏性的脚本语句能够直接写进数据库中,浏览器会直接执行这些脚本语句,破坏网站的正常显示,或网站用户的信息被盗,构造脚本语句时,要保证脚本的完整性。

  document.write("abc")

  <script>alter("abc")</script>

3URL地址后面随便输入一些符号,并尽量是动态参数靠后

4)验证码更新问题

5)现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

6Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

7)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。

8)当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。

9)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。

  • 数据校验

与数据进行比对,查询日志信息

测试中应该注意的其他情况

1、在测试时,与网络有关的步骤或者模块必须考虑到断网的情况

2、每个页面都有相应的Title,不能为空,或者显示无标题页

3、在测试的时候要考虑到页面出现滚动条时,滚动条上下滚动时,页面是否正常

4URL不区分大小写,大小写不敏感

5、、对于电子商务网站,当用户并发购买数量大于库存的数量时,系统如何处理

6、测试数据避免单纯输入“123”“abc“之类的,让测试数据尽量接近实际

7、进行测试时,尽量不要用超级管理员进行测试,用新建的用户进行测试。测试人员尽量不要使用同一个用户进行测试

8、提示信息:提示信息是否完整、正确、详细

9、帮助信息:是否提供帮助信息,帮助信息的表现形式(页面文字、提示信息、帮助文件),帮助信息是否正确、详细

10、可扩展性:是否由升级的余地,是否保留了接口

11、稳定性:运行所需的软硬件配置,占用资源情况,出现问题时的容错性,对数据的保护

12、运行速度:运行的快慢,带宽占用情况

 

posted @ 2019-02-21 17:36  ikbk  阅读(435)  评论(0编辑  收藏  举报