功能 | 条件 | 测试步骤 | 测试数据 | 预期结果 | 备注 |
搜索 或 查询 |
单独遍历各查询条件,测试按各查询条件是否都能够查询出相应的值. | 查询出符合条件的记录 | |||
设置界面上所有查询条件进行查询,单击查询按钮后,测试执行查询操作后,查询条件是否能保留 | 能够执行查询,且已输入/选择的查询条件能够保留 | ||||
随机对各查询条件进行组合查询,测试是否能够实现组合查询 | 各查询条件下存在相应的值 | 能够执行查询 | |||
在各字符串类型字段中输入非精确值进行查询,测试是否能够实现糊模查询 | 各查询条件下存在相应的值 | 能够执行查询 | |||
测试是否控制了各种非法字符的查询 | 输入@#$%^&*()<p>~'"%-like=?等符号 | 查询不到任何记录 | |||
设置条件查询出记录后,翻到最后一页,再更改查询条件,测试各查询条件查询出记录后再切换条件查询是否正确。 | 第一个查询条件查询出来的记录页数必须多于第二个查询条件查询出来的记录页数 | 查询出相应的记录 | 第一次查询条件范围比第二次大,不一定说要存在分页 | ||
设置查询条件,点击查询按钮,测试未查询到任何记录时,是否会给予相应的提示 | 该查询条件下无任何记录 | 提示‘未查到任何记录,请放大查询条件试试!’ | |||
设置查询条件,按回车键,测试是否支持回车查询 | 执行查询条件 | 可针对特定的场景不一定要实现 | |||
输入各查询条件,前中后包含空格 | 前后包含空格去掉空格查询,中间包含空格查不出记录 | ||||
不输入或输入空格查询 | 提示请输入关键字查询 或 默认查询出所有记录 | ||||
有日期查询 字段 |
输入查询值,测试存在日期型查询字段时,查询是否正确 | 存在输入范围内的记录. | 能够执行查询 | ||
输入查询值,测试当存在开始日期及结束日期进行查询 | 1、开始日期大于结束日期 2、开始日期等于结束日期 3、开始日期小于结束日期,但两者格式不一 |
1、给予提示信息。 2、能够正常查询。 3、进行格式化后能够正常查询 |
|||
超日期范围的查询 | 输入1890-01-01或2999-01-01进行查询 | 查询不到任何记录 | |||
输入非完整的日期或其它数据,测试对日期型字段查询时,是否对非法数据进行了控制 | 如:2015-08~2015-09-30、205-02-02、2015-7-7、2015-07-或其他数据汉字、字母、特殊字符或随便输入数字 | 进行了格式化输入或给予明确提示 | |||
输入不存在的日期进行查询 | 2015-02-30、2015-13-01、2015-07-32 | 给予提示信息 | |||
输入不符合项目设定的日期类型,是否会做格式转换 | 如要求格式是2015-07-20,输入的是2015/07/20、2015.07.20等 | 自动转换或者不符合格式要求 | |||
有重置功能 | 输入查询条件后,点重置 | 重置后,已输入或已选择的值都恢复为默认值 | |||
不输入或输入空格搜索 | 提示请输入关键字 | ||||
日期格式 (年月日形式) |
输入正确的日期 | 如:2011-5-11 | 验证通过,输入正确 | ||
测试对日期数据的溢出是否进行了控制? | 输入符合要求的年月,输入32日,如1989-11-32 | 给予提示信息,不允许提交 | |||
输入符合要求的年日,输入13月,如1989-13-12 | |||||
输入符合要求的年,月输入4、6、9、11月,日输入31日 | |||||
输入符合要求的非闰年,月输入2,日输入29,如2009-2-29 | |||||
输入符合要求的闰年,月输入2,日输入30,如2008-2-30 | |||||
测试是否对日期型数据进行了格式化输入? | 输入不合法的日期,如2009-09、2009-09- 、200-2-2等 | 给出错误提示 | |||
输入不符合该项目的日期格式,(如项目日期格式为2009-10-10,而输入的是2009/10/10、2009.10.10等) | |||||
随便输入数字,如1、22、456等 | |||||
测试是否对时间型数据是否进行了格式化输入? | 输入空白 | 进行了格式化输入,不可以输入非时间之外的数据 | |||
输入特殊字符串NULL、null、 空格的转义字符;<scrīpt></scrīpt>;<br>;<tr>;<td>;< /tr>等 | |||||
输入汉字或字母 | |||||
输入框 | 必填 | 输入中英文空格 | 如果必填的话:提示不能为空; | 如果输入框中内容不符合标准,建议在光标离开输入框时便给出提示信息,而不是操作下一步操作时在给出,如保存按钮 | |
不输入任何字符或者输入空格 | 提示不能为空 | ||||
输入超长字符,超过边界值的,看页面显示 (不符合长度要求) | 大于或小于制定长度 | 给予提示信息 | |||
在各输入框中输入相应的值,测试输入框对空格的处理机制(空格) | 1、前面存在空格 2、后面存在空格 3、前/后都存在空格 4、中间存在空格 |
1、2、3能够正常去掉空格保存; 4 连同空格一起进行保存 |
|||
测试是否对各输入框的非法字符进行了控制 | 输入特殊字符串NULL、null、 空格的转义字符;<scrīpt></scrīpt>;<br>;<tr>;<td>;< /tr>;</td>;</html>;</body>;</table>等 | 1、不允许输入或提示‘你输入的 **中存在非法字符,请重新输入 2、允许输入保存后,能够正常显示 |
|||
密码输入框 | 输入数字,测试密码是否转换成星号或其它符号 | 能将密码转换成星号或其他字符 | |||
按tab键,测试输入框对快捷键的使用 | 光标能在输入框中来回切换 | ||||
若只允许输入字母,尝试输入数字;反之;尝试输入字母 | 提示输入字符不符合要求 | ||||
利用复制,粘贴等操作强制输入程序不允许的输入数据 | 给予提示信息 | ||||
上传图片(上传文件) 浏览/选择按钮 |
文件为jpg或gif格式图片,大小为<=5M | 文件类型正确,文件大小合适 | jpg或gif的格式图片,文件大小为4.9M | 上传成功 | 文件大小小于要求 |
文件类型正确,文件大小不合适 | jpg或gif的格式图片,文件大小为5.1M | 上传的附件中大小不能超过5M | |||
文件类型正确,文件大小合适(临界值) | jpg或gif的格式图片,文件大小为5M | 上传成功 | 文件大小刚好符合要求 | ||
文件类型错误,文件大小合适的校验 | doc;.xls;ppt;bmp;jpeg;psd;tiff;tga;png;swf;svg;pcx;dxf;wmf;emf;lic;eps;.txt等格式文件,文件大小合适 | 提示“只能上下jpg或gif格式图片 | |||
文件类型和文件大小合法 | 上传一个0kb的图片 | 提示信息:“请重新上传文件,或者是不能上传0kb的图 | |||
文件类型和文件大小合法 | 上传一个正在使用中的图片(即打开该图片,在上传该图片) | 上传成功 | |||
文件类型和文件大小合法 | 手动输入一个存在的图片地址 | 上传成功 | |||
文件类型和文件大小合法 | 手动输入一个不存在的图片地址 | 提示:“请正确选择要上传的文件 | |||
文件类型和大小都合法 | 手动输入一个存在的图片名称 | 提示:“请正确选择要上传的文件的路径” | |||
上一次上传失败后,再进行上传操作,测试上传失败后,是否还能继续上传 | 能够正常进行上传 | 先上传失败,在符合要求上传看是否能上传成功 | |||
数据文件导入 | 选择一个文件,点击上传按钮,测试是否能够完成数据导入功能? | 文件内的数据都符合格式 | 正常完成导入,导入成功后,给予明确的提示信息 | 对数据文件的导入,如果是Excel文件,存在多个sheet,是否可以导入 a、两个sheet内容一致; b、一个sheet内容符合要求,一个为空白; c、两个sheet内容不一致,个字段数据都是真实存在的; |
|
选择一个文件,点击上传按钮,测试导入文件中的数据异常,导入是否能正确判断? | 文件内的数据部分符合要求,部分不符合要求 | 检查完后,能够给予有多少不符合条件的记录提示,且可以点击链接查看具体不符合条件的记录;提供继续/终止两种选择;继续则忽略不符合条件记录继续导入;终止则停止本次导入,退出本次导入 | |||
选择一个文件,点击上传按钮,测试导入文件中的数据异常,导入是否能正确判断? | 文件内的数据全部不符合要求 | 同上 | |||
选择一个文件,点击上传按钮,测试导入文件中的数据异常,导入是否能正确判断? | 文件内的数据关键字段值在数据库中不存在 | 同上 | |||
选择一个文件,点击上传按钮,测试导入文件中的数据异常,导入是否能正确判断? | 文件内的数据格式不符(如匹配字段名、表名等不同) | 同上 | 比如要求输入名字和手机号,文件内确是名字和身份证 | ||
文件的导出 或 下载(考虑文件名内容是否有乱码) |
导出文件名长度 | windows系统支持256位的文件命名。可以由下划线数字字母等组成,不能有特殊字符。平时取名时按照文件夹中存放的文件作用类型取名就好啦 | 如果文件内含时间段最好文件名中包含时间 | ||
导出文件是否为空 | 看实际情况,若原本就没数据,导出可以为空,但是必须带各个字段名,数据可为空 | ||||
导出文件名为特殊字符的情况 | 不该存在特殊字符 | 导出要采用多个浏览器检测,之前碰到在火狐浏览器正常,却在其他浏览器显示乱码 | |||
导出全部资料的情况,导出的信息是否正确 | 信息要正确 | ||||
导出部分资料的情况,导出的信息是否正确 | 信息要正确 | ||||
导出大量数据时的时间是否在合理的时间范围内 | |||||
导出目的磁盘空间已满的情况下,导出是否有友好的处理方式 | 可以给予友好的提示,存储空间不足等 | ||||
导出目的的文件夹为只读的情况下,导出时是否有友好的的提示信息 | 先将目标文件夹状态改成只读形式 | 要提示 | |||
分页 | 输入页数,点击go按钮,测试是否能执行翻页操作 | 正常转向所输入的页面,且当前页数及当前页的数据显示正确 | |||
点击首页、上一页、下一页、未页,测试各页面转换是否正常 | 正常进行转向,且当前页数及当前页数据显示正确 | ||||
测试在各边界面值再进行翻页是否正确 | 1、已在首页,点击首页或上一页; 2、已在未页,点击未页或下一页; |
能够正常提示或不会报错,当前页数及当前页的数据显示正确 | |||
输入页数,点击go按钮,测试是否对所输入的页数进行了判断 | 1、输入非正整数 2、输入超出的页数 3、输入超大的数值 4、输入字符、中文 5、输入特殊字符 |
1、4、5限制不允许输入; 2、3自动转到未页或给予提示 |
|||
对数据操作(增删)后是否正确显示数据 | 对分页列表中存在删除操作时,删除几条记录,页数是否更新 | 页数更新,信息正确显示 | |||
搜索后执行翻页,是否正确 | 正常 | ||||
全选 | 点击全选按钮,测试是否实现了全选当前页的功能 | 1、部分记录已被选中 2、全选前没有被选中的记录 | 当前页的全部记录被选中 | ||
点击全选按钮后,再点击全选按钮,测试全选按钮勾选状态变更是否正确 | 当前页的全部记录被取消选中 | ||||
点击全选按钮后,再去掉某些记录的勾选,测试全选按钮勾选状态变更是否正确 | 当前页的全选按钮取消选中 | ||||
将当前页的所有记录单个单个全部勾选,测试全选按钮勾选状态变更是否正确 | 当前页的全选按钮被选中 | ||||
删除 | 选择一条记录,执行删除操作,测试是否能正常进行删除操作 | 能够正常完成删除操作 | |||
不选择任何记录,直接点击删除按钮,测试是否对无选择记录进行删除做了控制 | 提示‘请选择一条记录!’或删除按钮呈灰色显示或默认选择一条记录 | ||||
选择一条记录,点击删除按钮,测试删除时是否会给予相应的提示,并按所选项执行 | 提示‘您是否真的要删除所选中的记录?’,点击取消,不进行任何操作,回到原界面,点击确定删除,界面刷新不显示此条记录,停留在所删除记录所在页,总记录数-1 | 建议有这个友好提示 | |||
设置条件查询出记录后翻页,选一条记录,点击【删除】并确定删除,测试删除边界值是否正常 | 翻页后,只存在一条记录 | 界面正常刷新至上一页,页数等于原页数-1。 | |||
勾选多条记录,点击删除按钮,在弹出的提示框中,点击确定,测试是否可以进行批量删除多条数据 | 能够正常批量删除多条数据 | ||||
选择记录进行删除,测试当删除相关连的信息时,是否给予明确的提示信息 | 1、所删除记录被其它引用,不允许被删除。 2、所删除记录被其它引用,允许被删除。 |
1、给予明确提示信息,不允许被删除(不给予确认删除的提示信息) 2、给予明确提示信息,让用户确认是否删除,可选择是否继续,且被引用的信息也跟着删除掉了 |
|||
保存 | 进行新增或修改操作,输入相关内容后,多次提交保存,测试是否限制了重复保存 | 重复点击保存或 快速点击 | 在提交反馈之前,按钮呈灰色显示不允许点击 | ||
进行保存操作,测试当保存操作所费时间较长时,是否能提供进度条 | 当反馈时间达到12S以上时。 | 给予‘正在处理中’的进度条提示 | |||
修改 | 有单独的修改按钮 或 列表显示,每一行都有一个修改按钮 (部分使用) |
勾选一条记录,进行修改保存,测试是否能正常进行修改操作 | 能够正常进行修改保存,更新数据库中相应的值 | ||
未选择记录,点击修改按钮,测试是否对无选择记录进行修改做了控制 | 提示‘请选择一条记录!’或修改按钮呈灰色显示或默认选中第一条记录 | ||||
选择一条记录,点击修改按钮,进行修改,点击确定按钮,测试是否对重复的记录进行了控制 | 将关键字段修改成一个已存在的值 | 提示‘该XX已存在,请重新输入 !’,光标停在XX输入框处 | |||
选择一条记录,点击修改按钮,再点击返回按钮,测试取消修改时是否会给予提示 | 不修改任何内容 | 直接返回原记录所在页 | |||
勾选多条记录,点击修改按钮,测试是否对勾选多个记录进行修改进行了控制。 | 提示‘您选择了多条记录,系统将修改第一条记录,且弹出第一条记录进行修改 | ||||
修改引用的信息 | 引用的信息 | 提示不能修改,页面没有保存按钮 | |||
选择一条记录进行修改保存,测试信息修改是否正常 | 该信息被其他模块引用 | 能够正常进行修改保存,且被引用的信息也跟着修改 | 例如员工信息里的公司名称,那么在公司信息里这个名称做了修改,员工信息里面包含公司名称的也全部做了修改,相反员工信息里面针对公司名称照道理不允许修改 | ||
添加 | 执行新增操作,测试是否能正常进行新增 | 输入必填字段 | 能正常完成新增操作 | ||
只填写界面上标识的必填字段(即标识*号)号的字段,测试界面上必填字段控制与数据库必填控制是否一致 | 能够正常进行保存 | ||||
输入相关数据后,进行保存,测试当因任何原因无法提交时,原输入的内容是否保存 | 制造提交失败的数据,比如某个字段输入不符合要求 | 提交失败后,界面的数据仍保留,不会清空 | |||
执行新增操作,测试新增记录是否排在首行 | 对排序没有特殊要求的界面 | 满足新增记录排在首行的规则 | 不一定在首行,有些可能是按编号排序 | ||
执行新增操作,关键字段与数据库中已存在的值重复,测试是否对重复值进行了判断 | 重复提交以增加过的记录 | 提示该信息已经存在,请重新输入的提示信息 | |||
执行新增操作,测试是否对各字段的长度进行了限制 | 各输入的值都大于表中定义的长度 | 在各输入框中,输入的内容达到所定义的长度时,则限制无法输入了。(如果输入的为中文字符,则控制到一半的长时就够了) | |||
操作新增操作,测试是否对各输入框的非法字符进行了控制 | 在各输入框中,输入@#$%^&*()<p>~%[]-/’等。 | 1、不允许输入或提示‘你输入的 **中存在非法字符,请重新输入 2、允许输入保存后,能够正常回显 |
|||
在各输入框中输入相应的值进行新增保存,测试对各输入框中,输入内容前中后包含空格 | 1、前面存在空格 2、后面存在空格 3、前/后都存在空格 4、中间存在空格 |
1、2、3能够正常去掉空格保存; 4 连同空格一起进行保存 |
|||
在多行文本框中输入文字及回车进行保存,测试在多行文本框中,是否允许存在回车符 | 存在一个或多个回车键 | 能够正常进行保存及显示 | |||
测试针对特殊字段限制是否正常 | 1、主页地址 2、电话号码 3、E-mail地址 |
1、主页地址中可输入\ 2、电话号码中可输入\- 3、E-mail地址中输入@ |
具体查看各个输入框对应校验,如电话号码 | ||
测试是否对必填字段进行了检查 | 关键字段不输入或输入空格 | 提示‘请输入XX,光标停留在第一个需输入的输入框处 | 光标离开输入框时便提示不符合标准 | ||
点击‘新增’按钮,在弹出的页面中,输入及选择相应信息,点击取消(返回)按钮,测试点击取消(返回)时是否会给予相应的提示 | 给予‘是否需要保存’的提示 | 需要这个提示比较好 | |||
输入非负整型数据,测试是否对数值型数据进行了格式化输入 | 1、输入正常的正整数 2、输入0、负数、小数 3、输入超大值(超出该字段定义范围) 4、输入非数值(如数值+字符;字符+数值; |
进行了格式化输入控制; 1、能够正常输入 2、不允许输入 3、给予提示信息 4、不允许输入或提交时给予提示信息。 |
|||
输入整型数据,测试是否对数值型数据进行了格式化输入 | 1、输入正整数、0、负整数 2、输入小数 3、输入超大值(超出该字段定义范围) 4、输入非数值(如数值+字符;字符+数值;纯字符) |
进行了格式化输入控制: 1、能够正常输入 2、不允许输入 3、给予提示信息 4、不允许输入或提交给予提示信息。 |
|||
输入浮点型数据,测试是否对数值型数据进行了格式化输入 | 1、输入正数、0、负数 2、输入超大值(超出该字段定义范围) 3、输入超出精度范围值(超出该字段定义精度) 4、输入非数值(如数值+字符;字符+数值;纯字符) |
进行了格式化输入控制: 1、能够正常输入 2、给予提示信息 3、给予提示信息 4、不允许输入或提交给予提示信息。 |
|||
点击新增按钮,输入信息后,点重置 | 能够清空已输入的数据,但不清空新增时默认生成的数据 | ||||
邮箱格式(注意大小写测试) | 必填 | 为必填项时,不输入任何字符或输入空格 | 不输入任何信息 | 校验不通过,给予提示信息 | 电子邮箱格式:英文+数字+标点符号(小数点,横杆)@(英文+数字+标点符号)\.com\.cn\.com.cn\.net 等 163.com 、21cn.com、yahoo.com.cn 、 someone@example.com 、18211114227@wo.cn 英文是否可以大小写互通 |
输入中文空格 | |||||
输入英文空格 | |||||
输入中文或英文 | |||||
字符串中没有@和点 | ceshi163com 全部转成大写测试一遍 | ||||
字符串中有@和没有点 | ceshi@163com | ||||
字符串中没有@和有点 | ceshi163.com | ||||
字符串中有特殊字符 | $huiyanni@163.com | ||||
第一个字符串为@ 或点 | .test或@test | ||||
字符串的最后一位是@或点 | test@163. | ||||
@和点之间没有字符串 | liao@.com | ||||
字符串中多于两个@符号 | 123@qq@qq.com | ||||
字符串长度小于6,大于30个字符 | werw, wew...@163.com | ||||
字符串中有汉字 | 邮箱格式@qq.com | ||||
输入@前面有分隔符的情况 | a.b@163.com 校验可通过 | ||||
输入@后面有多个分隔符(小数点) | ab@163.c.d 校验可通过 | ||||
身份证号码 | 测试对身份证号码的溢出是否进行了控制 | 输入少于15位的身份证号码:如:36031219880708 | 给予提示信息,不允许提交 | 15位身份证号就是18位: 去掉最后一位和年的前两位,一般针对19 |
|
输入大于15位的身份证号码:如:3603121988101058 | |||||
输入少于18位的身份证号码:如:36031219897521456 | |||||
输入大于18位的身份证号码:如:3603121987052874123 | |||||
测试是否对数字型数据是否进行了格式化输入 | 输入特殊字符串NULL、null、 空格的转义字符;<scrīpt></scrīpt>;<br>;<tr>;<td>;< /tr>等 | 进行了格式化输入,不可以输入非数字之外的数据 | |||
输入汉字 | |||||
输入字母 | |||||
必填 | 为必填项时,不输入任何字符或输入空格 | 不输入任何信息 | 必填,给予提示 | ||
输入中文空格 | |||||
输入英文空格 | |||||
测试是否对身份证号码进行了格式化输入(不存在的身份证号码) | 输入错误或不存在的身份证号码 332502201601012745 | 提示身份证号码不正确 | |||
输入的身份证号码是15位的真实号码(最后一位为字母或数字,字母是否一定是X,另外要求字母是否可以大小写都通过) | 提交成功 | |
|||
输入的身份证号码是18位的真实号码(最后一位为字母或数字) | 提交成功 | ||||
电话号码 | 测试是否对数字型数据是否进行了格式化输入 | 输入特殊字符串NULL、null、 空格的转义字符;<scrīpt></scrīpt>;<br>;<tr>;<td>;< /tr>;</td>;</html>;</body>;</table>等“-”除外 | 校验不通过,给予提示信息 | 常见的固定电话号码格式为区号加“-”加7位或8位电话号码 区号:3-5位,如北京:010、杭州0571、贵州福泉08641 格式:+ 86 571 8667 4288、0571-87654321、571-87654321、(0571)87654321、87654321、95105888 服务热线电话:95504、4008-114-124、400-665-9999等 |
|
输入汉字或字母 | |||||
必填 | 为必填项时,不输入任费时何字符或输入空格 | 不输入任何信息 | |||
输入中文空格 | |||||
输入英文空格 | |||||
手机号码 | 必填 | 为必填项时,不输入任何字符或输入空格 | 输入英文空格 | 校验不通过,给予提示信息 | 格式:校验数字开头或者目前是数字1开头的 测试数据:135-1234-1234、+8612345678900、+86 12345678900、(86)12345678900、23415678900 特殊的 147、157、183、188、189等 |
输入中文空格 | |||||
不输入任何信息 | |||||
输入长度超过11位字符 | 例如:158581654789 | ||||
输入长度小于11位字符 | 例如:158、15825、15858125、1585814569等 | ||||
测试是否对数字型数据是否进行了格式化输入 | 输入特殊字符串NULL、null、 空格的转义字符; | 进行了格式化输入,不可以输入非数字之外的数据 | |||
输入汉字或字母 | |||||
测试是否对手机号码进行了格式化输入 | 除这些号码以外的:联通:130-132,155,156,186 移动:134-139,150-152,157-159,188 电信:133,153,189,180 | 进行了格式化输入 | 最好校验一下长度是11位数字,1开头即可 | ||
邮政编码 | 必填 | 输入英文空格/不输入任何信息/输入中文空格 | 给予提示信息,不允许提交 | ||
输入特殊字符 | 给予提示信息,不允许提交 | ||||
输入中、英文内容/中英文结合数字 | 给予提示信息,不允许提交 | ||||
输入空格+数字,空格出现在开头、中间、结尾均需测试 | 前后去掉空格,中间含空格给予提示 | ||||
输入小于6个数字 | 给予提示信息,不允许提交 | ||||
输入6位数字 | 通过 | ||||
输入大于6位位数字 | 给予提示信息,不允许提交 | ||||
验证码 | 不输入任何字符 | ||||
空格输入 | |||||
输入空格+正确效验码,空格出现在开头、中间、结尾均需要测试 | |||||
输入4位其他非数字内容 | |||||
输入特殊字符 | |||||
输入前3位或后3位验证码正确数字 | |||||
输入4位正确校验码+其他数字 | |||||
登录 (用户名和密码) |
输入正确的用户名和密码登陆 | 用户名:ceshi 密码:123465 | 登陆成功 | ||
不输入任何信息,点击登录 | 无法登录,提示请用户名和密码不能为空 | ||||
输入存在的用户名,密码为空,点击登录 | 用户名:test | 无法登录,提示请密码不能为空 | |||
输入存在的密码,用户名为空,点击登录 | 密码:123456 | 无法登录,提示用户名不能为空 | |||
输入存在的用户名、不存在的密码,点击登录 | 用户名:test 密码:456 | 无法登录,提示请输入正确的密码 | |||
输入不存在的用户名、存在的密码,点击登录 | 用户名:test1 密码:123456 | 无法登录,提示该用户名不存在 | |||
输入不存在的用户名、不存在的密码,点击登录 | 用户名:test1 密码:123 | 无法登录,提示请输入正确的用户名或密码 | |||
连续输入三次用户名和密码不正确,点击登录 | 无法登录,提示:您没有使用该系统的权限,请与管理员联系! | ||||
输入正确的用户名和密码,但用户名未区分小写 | 用户名:A001 密码:123 | 区分大小写,不能正常登录,提示请输入正确的用户名或密码 | |||
输入正确的用户名和密码,但密码未区分小写 | 用户名:a001 密码:A123 | 区分大小写,不能正常登录,提示请输入正确的的密码 | |||
在合法的用户名或密码前插入空格 | 用户名:空格a001 密码:空格123 | 提示请输入正确的用户名或密码 | |||
在合法的用户名或密码中间插入空格 | 用户名:aa空格a001 密码:11空格123 | 提示请输入正确的用户名或密码 | |||
在合法的用户名或密码后插入空格 | 用户名:aa001空格 密码:111空格 | 提示请输入正确的用户名或密码 | |||
输入已经禁止的用户名 | 用户名:test 密码:123456 | 您输入的用户名已经被禁止 | |||
输入已经删除的用户名 | 用户名:test 密码:123456 | 您输入的用户名不存在 | |||
验证是否支持快捷键tab键 | 鼠标光标依次跳转到用户名、密码、登录按钮上 | ||||
用全三角输入法输入用户名或密码 | 用户名:abc 密码:123 | 请输入正确的用户名或密码 | |||
用户重置或取消:输入用户名或密码,点击重置或取消 | 用户名:test 密码:123456 | 清空输入框 | |||
注册 | 不输入任何信息,直接点注册,验证是否必填 | 提示不能为空 | |||
输入用户名、密码和确认密码,点击提交表单 | 用户名:test 密码:123456 确认密码:123456 | 注册成功 | |||
输入用户名、密码和确认密码,用户名以字符开头 | 用户名:-test001 密码:123456 确认密码:123456 | 提示"用户名只能以数字或字母开头或结尾,请重新输入" | |||
输入用户名和密码,用户名含有非法字符 | 用户名:a0571&00 密码:123 | 提示用户名含有非法字符 | |||
输入用户名和密码,密码含有非法字符 | 用户名:a0571 密码:123*123 | 提示密码含有非法字符 | |||
输入用户名、密码和确认密码,两次密码输入不一致 | 用户名:a0571 密码:123 确认密码:456 | 提示两次密码输入不一致,请重新输入 | |||
输入用户名、密码和确认密码、邮箱,邮箱格式的不正确 | 用户名:a0571 密码:123 确认密码:123 邮箱:4412854qq.com | 提示邮箱地址不正确不正确 | |||
输入用户名和密码,输入的用户名已经被注册 | 用户名:test 密码:123456 | 提示用户名已经被注册,请重新输入 | |||
输入用户名和密码,用户名和密码长度都是最大值 | 用户名:testtest0123456789 密码:360312196808061028 | 注册成功 | |||
输入用户名和密码,用户名长度超过最大值 | 用户名:testtest01234567890 密码:123456 | 注册失败,提示用户名的长度超过最大有效值 | |||
输入用户名和密码,密码长度超过最大值 | 用户名:test 密码:3603121968080610280 | 注册失败,提示密码的长度超过最大有效值 | |||
输入用户名和密码,用户名和密码长度都是最小值 | 用户名:test01 密码:123456 | 注册成功 | |||
输入用户名和密码,用户名长度小于最小值 | 用户名:test 密码:123456 | 注册失败,提示用户名或密码的长度低于最小有效值 | |||
输入用户名和密码,密码长度小于最小值 | 用户名:test01 密码:123 | ||||
输入用户名和密码,验证是否支持快捷键tab键 | 鼠标光标依次跳转到用户名、密码、确认密码等 | ||||
输入已经存在的用户名,验证对已经存在用户的用户名大小写是否做出正确响应 | 用户名:Test001 | 注册成功(用户名区分大小写) | |||
IP地址 | 测试必填:输入中英文空格或者不输入任何信息 | 给予提示信息,不允许提交 | |||
IP地址 前中后含空格 | 中间不允许包含空格 | ||||
要求是4位,输入小于4位或者大于4位格式 | 137.125.11、137.112.254.12.12、 | 给予提示信息,不允许提交 | |||
4位中有任意一位大于255(测试每一位) | 192.124.256.21 | 给予提示信息,不允许提交 | |||
第一个数字或者最后一个数字为0 | 0.1.2.3、255.255.255.0、23.54.156.0等 | 给予提示信息,不允许提交 | |||
其中某一位超过4个数字 | 145.1234.12.111 | 给予提示信息,不允许提交 | |||
特殊的IP | 255.255.255.255、0.0.0.0、1.1.1.1 | ||||
正确的ip地址中混入非法字符/中文/英文 | 给予提示信息,不允许提交 |
登录
自己总结:
1)空白
用户名和密码均为空/用户名填写,密码为空/用户名为空,密码填写
2)错误校验
输入错误的用户名和密码/用户名错误密码正确/用户名正确密码错误
3)大小写区分(如:用户名和密码都为小写时)
用户名和密码均大写/用户名大写,密码小写/用户名小写,密码大写
4)存在空格
合法的用户名或密码前插入空格/合法的用户名或密码中间插入空格/合法的用户名或密码后插入空格
5)已注销的用户名登录
6)已禁止/锁住的用户名登录
7)长短校验
在给定的用户名和密码规则下,超出或少于指定的长度登录(测试临界值)
8)非法字符校验(如@#¥%等字符)
9)多次错误登录,是否锁住
用户名或者密码在连续输错3次或者5次的情况下,账号要被锁定
10)是否支持tab和enter键
输入框是否支持tab键或支持Enter键登录
11)多点登录/提示信息
同一个用户不能同一时间在不同的位置登录
12)登录是否记住用户名和密码
13)密码明文
14)切换用户,是否显示前一用户信息
15)登陆后前进后退操作
16)查看密码转码是否有规律,是否每次都是一样
17)密码是否可以用MD5解密
18)登录超时(经过一段时间自动退出)
19)SQL注入
20)跨站
21)COOKIE注入
22)COOKIE加密检查
23)提交用get方法(不安全)
网上资料:
一、基本功能测试:
输入正确的用户名和密码登录成功
输入错误的用户名密码登录失败
用户名正确,密码错误,是否提示输入密码错误?
用户名错误,密码正常,是否提示输入用户名错误?
用户名和密码都错误,是否有相应提示?
用户名密码为空时,是否有相应提示?
如果用户未注册,提示请先注册,然后进行登录
已经注销的用户登录失败,提示信息友好?
密码框是否加密显示?
用户名是否支持中文、特殊字符?
用户名是否有长度限制?
密码是否支持中文,特殊字符?
密码是否有长度限制?
密码是否区分大小写?
密码为一些简单常用字符串时,是否提示修改?如:123456
密码存储方式?是否加密?
登录功能是否需要输入验证码?
验证码有效时间?
验证码输入错误,登录失败,提示信息是否友好?
输入过期的验证码能否登录成功?
验证码是否容易识别?
验证码换一张功能是否可用?点击验证码图片是否可以更换验证码?
用户体系:比如系统分普通用户、高级用户,不同用户登录系统后可的权限不同。
如果使用第三方账号(QQ,微博账号)登录,那么第三方账号与本系统的账号体系对应关系如何保存?首次登录需要极权等
二、页面测试:
登录页面显示是否正常?文字和图片能否正常显示,相应的提示信息是否正确,按钮的设置和排列是否正常,页面是否简洁壮观等。
页面默认焦点是否定位在用户名的输入框中
首次登录时相应的输入框是否为空?或者如果有默认文案,当点击输入框时默认方案是否消失?
相应的按钮如登录、重置等,是否可用;页面的前进、后退、刷新按钮是否可用?
快捷键Tab,Esc,Enter 等,能否控制使用
兼容性测试:不同浏览器,不同操作系统,不同分辨率下界面是否正常
三 、安全测试:
不登录:浏览器中直接输入登录后的地址,看是否可以直接进入
登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)
用户名和密码是否通过加密的方式,发送给Web服务器
用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证
用户名和密码的输入框,应该屏蔽SQL注入攻击
用户名和密码的的输入框,应该禁止输入脚本 (防止XSS攻击)
错误登陆的次数限制(防止暴力破解)
考虑是否支持多用户在同一机器上登录;
考虑一用户在多台机器上登录
四、性能测试:
单用户登录系统的响应时间是否符合"1-3-5"原则,所谓1-3-5原则为:网站响应时间1-3-5原则,1秒是很好,3s是好,超过5秒用户就容易跳失
用户数在临界点时并发登录是否还能符合"3-5-8"原则
压力:大量并发用户登录,系统的响应时间是多少?系统会出现宕机、内存泄露、cpu饱和、无法登录吗?
稳定性: 系统能否处理并发用户数在临界点以内连续登录N个时的场景?
五、其它测试:
连续输入3次或以上错误密码,用记是否被锁一定时间(如:15分钟)?时间内不允许登录,超出时间点是否可以继续登录。
用户session过期后,重新登录是否还能重新返回这前session过期的页面?
用户名和密码输入框是事支持键盘快捷键?如:撤销、复制、粘贴等等
是否允许同名用户同时登录进行操作?考虑web和app同时登录
手机登录时,是否先判断网络可用?
手机登录时,是否先判断app存在新版本?
是否支持单点登录?
是否有埋点接口
WEB网站测试
一、输入框:
1、正常的字母/文字/数字(正常流程的测试);
2、重复提交(输入内容后,重复点击提交按钮);
3、纯异常字符/正常输入夹杂异常字符(!@#¥%……&**等等);
4、长度限制(边界值测试,假设最小长度为N,最大长度为M,则测试N-1,N,M,M+1);
5、重复输入(已经存在记录,重复输入);
6、空提交(什么都不输入直接提交,看程序如何处理);
7、含有空格(开头,中间,结尾);
8、含有回车(输入内容中含有回车,查看如何处理,如何保存,以及如何显示);
9、复制粘贴操作(如密码需二次确认验证,此时复制粘贴不可生效,其余的情况应该生效);
10、如有格式要求,请验证格式(如电话号码的格式要求,运营商号段的要求);
11、输入非法字符集,如:null,\n;
12、全/半角的符号是否区分;
13、对于搜索输入框:
若输入 * 是否能搜索出全部的内容;
若输入空格能否搜索出全部的内容;
若输入比要搜索的全部内容超长的字符,能否搜出相应的内容;
输入脚本/html语言,是否会过滤(此处涉及安全测试,可暂不考虑)。
二、提交/确定按钮:
1、对于提交/确定按钮,点击后,数据是否成功处理,页面跳转是否正确;
2、连续点击提交/确定按钮页面如何处理,注意连续提交时操作要快,达到签个提交尚未处理完成,点击下一个提交,程序如何处理,是否报错;
3、对于取消按钮,点击“取消”按钮后,查看数据有没提交。
三、后退按钮,返回键:
1、对于页面的操作,大家要注意测试下浏览器上的后退按钮操作,查看下做完操作后点击后退按钮后,之前的操作是否会撤销?
2、连续点击后退按钮,查看页面会做何种处理,是否会报错;
3、比如已经退出登录的页面,点击后退按钮,页面是否仍是登录状态?
4、对于有返回键的页面,对于已经成功提交的记录,点击返回键后,看如何处理之前的操作;
5、对于有连续返回键的页面,连续点击返回键,页面如何处理,是否报错。
四、链接测试:
1、首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;
2、其次,测试所链接的页面是否存在;
3、最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。
要注意的是:未登录时各功能跳转页面的测试;对于网站测试各个页面的跳转都是需要点击测试的,以及需要登录的操作,在未登录的情况下去操作,跳转是否正常都需要验证;
五、session超时/失效:
1、登录后长时间不操作,session超时,查看页面跳转;
2、这涉及所有需要登录的才能操作的页面;
3、测试这种情况的简便方法:登录网站,将需要测试的页面Page1在另一个标签中打开,然后再在原来的页面中退出登录,此时session已经失效;这样再去操作Page1,即可达到session失效或超时的条件。
六、 图形界面测试:
1、首先要确保图形有明确的用途。
2、网站的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。
3、其次验证所有页面字体的风格是否一致;在这要验证背景颜色应该与字体颜色和前景颜色相搭配。
七、操作流程测试:测试中不仅测试界面友好性,还要对操作流程易用性或者友好性做测试.
1、不仅要验证操作流程是否符合大部分用户的操作习惯;
2、是否有多余的操作流程,对于多余的流程是没有任何好处的,不仅使操作繁琐还有可能出现不必要的漏洞;
3、操作流程是否顺畅,会不会产生让用户误解的步骤;
4、每个步骤操作完以后,需要给出提示的是否明确给出。
八、列表及翻页功能测试:
1、对于页面中的各项列表,都要测试其翻页功能,不仅要注意测试各个翻页相关按钮(注意:tab键,enter键的测试),特别是首页,尾页;
2、还要测试当该列表中含有的页数超过5页,10页甚至更多页的情况;同时要验证5页以后,或者10页以后,或者很多也以后的页面是否正常;
九、页面提示语测试:
页面提示语不仅要友好,还要做到整个网站风格(字体大小,字体颜色,提示的排版,背景,提示语气等)要统一;对于这种提示语的测
试,在测试的过程分别提出来 可能会比较繁琐,而且浪费时间和体力;对于这一类问题,最好是统一提出,统一总结,因为此类情况大部
分会是比较类似的情况,可统一整理出文档,反馈给开发 人员,统一修改,这样能够提高双方的工作效率。
十、浏览器兼容性:
现在新开发的项目对浏览器的兼容性要求也是比较高的,比较主流的浏览器就是IE6,IE7,IE8以及FireFox,苹果的浏览器Safari等,通过我
们测试的情况,IE6是最不容易兼容的浏览器,其次是IE7,Safari;IE8和FireFox差不多,一般问题不大。在测试的时候大家最好用IE6浏览
器,容易发现问题;对于其他IE的测试可以通过IETester工具,这个并不是完全精准的,但是鉴于一个电脑只能安装一个IE浏览器,只能退而
求其次了;当然也可以用其他同事的浏览器确认测试。
十一、是否支持tab键,enter键:
在测试网站的按钮或者输入框时,要测试是否支持tab键和enter键,利用这两个键做操作是用户习惯性的操作;
十二、页面title测试:
一个网站的页面title是最好要统一的;
要验证页面title的显示是否正确;
风格是否统一;
类似操作的不同页面的title是否与对应的页面相一致。
十三、刷新键:点击浏览器上的刷新键,检查页面如何处理,是否报错?
十四、滚动条测试:对于滚动条的测试,要注意测试拉动滚动条是否异常