英文全角、英文半角、数字、空或者空格、特殊字符“……!@#¥%……&*({【《,。?、:;‘<>’》】})”特别要注意单引号和&符号。禁止直接输入特殊字符时,使用“粘贴、拷贝”功能尝试输入。
知识点扩展:全角/半角
全角:一个字符占用两个标准字符位置
半角:一个字符占用一个标准字符位置
在计算机系统中,输入法为英文时,默认就是输入半角状态,不管是输入字母、符号还是数字,都是占据一个英文字符位置;如果切换到中文输入法,则会有全角半角两种选择,对于汉字,这两个选项没有影响,都是占据两个英文字符位置,但是对于符号、数字和英文字母,选择全角后,符号、数字和英文字母都会被视为汉字,占两个字符。
最小长度、最大长度、最小长度-1、最大长度+1、输入超工字符(例如:把整个文章拷贝过去)。
输入的字符间有空格、字符前有空格、字符后有空格、字符前后有空格。
允许回车换行、保存后再查看显示能保存输入的格式。
输入特殊字符串(null,NULL,javascript)
输入框关于手机号、身份证号、座机号等校验,需关注:手机号不同号段、位数,身份证号格式是否符合规则,座机号格式及位数问题。
最大值、最小值、最大值+1、最小值-1
最小位数、最大位数、最小位数-1、最大位数+1、输入超长值、输入整数。
输入空白(null)、空格或“……!@#¥%&*({【《,。?、:;‘<>’》】})”等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如∑,㏒,㏑,∏,+,-等。
输入负整数、负小数、分数、输入字母、汉字、小数(小数前0点舍去的情况,多个小数点的情况)、首位为0的数字如01、02、科学技术法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币型输入(允许小数点后面几位)。
拷贝粘贴
月输入【1、3、5、7、8、10、12】,日输入【0日、1日、32日】;月输入【4、6、9、11】,日输入【30、31】;非闰年,月输入【2】,日输入【28、29】;闰年,月输入【2】,日输入【29、30】;月输入【0、1、12、13】。
特殊字符:输入空白或NULL、输入……!@#¥%&*({【《,。?、:;‘<>’》】}等可能导致系统错误的字符。
不能直接输入的地方,通过粘贴方式,检验数据是否出错
在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。
如果查询条件为输入框,参考输入框对应类型的测试点。
搜索名称中的任意字符查询,查询结果是否正确。
输入超长名称查询结果是否正确,是否可查询到。
输入系统中不存在匹配的数据查询条件,结果是否正确。
用户进行查询操作时,一般不会清空输入的查询条件数据,除非有特殊说明。
不同查询条件之间来回切换,否有有页面错误(单选框和多选框最容易出错)。
测试多个查询条件时,要注意查询条件的组合测试,可能不同组合的测试会报错。如:查询条件ABCDE,ABC可以联查,DE可以联查,选择AB时仅C可选择,选择D时仅E可选择。
新增、编辑的输入框验证,参考输入框对应类型的测试点。
是否支持Tab键
是否支持回车键
不符合要求的地方是否有错误提示
提示语是否与需求相符
要求唯一的字段,重复添加是否会有限制及提示信息;是否可以修改唯一性字段为已存在的字段。(字段包括区分大小写以及在输入的内容前后输入空格,保存后,数据是否真的插入到数据库中,要注意保存数据的正确性,另外,针对用户账号等,有时要求大小写不敏感,有时要求大小写敏感,此处要按照需求定义来进行测试,不是固定不变的)
对编辑页面的每项进行修改,操作保存后,数据是否保存成功,检查相关联的数据是否更新显示。
必填项不填写是否会给出提示,提示后是否还会把数据保存到数据库中(正确处理方式是不存储),是否提示后出现页码错乱等。
此处需要注意,有时在添加的时候有字段长度的额限制,但是编辑的时候没有,需要注意编辑和新增规则是否一致。
上传图片后,查看预览页面是否显示正确,若未上传图片,查看编辑页面是否显示有默认的图片。
修改后的数据,在查询页面数据的显示是否及时更新,特别是首页数据的及时更新。
提交数据时,连续多次重复点击按钮,查看系统会不会连续生成相同的数据或者报错。
列表中没有数据或者没有选择数据,点击修改按钮,系统会有异常提示。
是否支持Tab键。
是否支持回车键。
不选择任何数据,直接点击删除按钮,应有提示信息。
删除某条数据,应该要有二次确认弹窗。
是否能连续删除多条数据。
当只有一条数据时,是否可以删除成功。
删除一条数据后,是否可以再添加相同的数据。
批量删除,删除的信息是否正确。
数据全选后删除,是否把所有的数据全部删除成功。
删除数据后,查询页面的数据显示是否更新。
如果删除的数据与其他业务数据有关联,需要注意关联性(例如:删除部门信息,部门已关联员工,则应给出提示信息)。
列表中没有记录或者没选择任何一条记录,点击删除按钮,要给出提示信息。
某一个功能模块具有最基本的增删改查(新增、修改、查询、删除)功能,需要进行以下步骤测试。
序号 | 步骤 | 说明 |
---|---|---|
1 | 增加——>增加——>增加 | 连续增加测试 |
2 | 增加——>删除 | |
3 | 增加——>删除——>增加 | 新增加的内容与删除内容一致 |
4 | 增加——>修改——>删除 | |
5 | 修改——>修改——>修改 | 连续修改测试 |
6 | 修改——>增加 | 新增加的内容与修改前内容一致 |
7 | 修改——>删除 | |
8 | 修改——>删除——>增加 | 新增加的内容与删除内容一致 |
9 | 删除——>删除——>删除 | 连续删除测试 |
注册时,设置密码为特殊版本号,检查登陆时是否会报错。
注册成功后,页面应跳转到登录页面,或者自动以登录状态跳转到首页或指定页面。
在注册信息中,删除已输入的必填信息,查看是否可以注册成功。
输入正确的用户名和正确的密码。
输入正确的用户名和错误的密码。
输入错误的用户名和正确的密码。
输入错误的用户名和错误的密码。
不输入用户名和密码(均为空格)。
只输入用户名,密码为空。
用户名为空,只输入密码。
输入正确的用户名和密码,但是不区分大小写。
用户名和密码包括特殊字符。
用户名和密码输入超长值。
已删除的用户名和密码。
登录时,当页面刷新或重新输入数据时,验证码是否更新。
错误的文件类型和正确的文件类型。
文件大小未超过文件上限,等于文件上限,大于文件上限验证
文件类型和大小都合适,上传一个正在使用中的图;或者手动输入存在/不存在的图片地址上传;输入图片名称上传;不选择文件直接点击上传;连续多次选择不同的文件,查看是否上传最后一次选择的文件。
列表、列宽显示是否合理。
列表数据太宽有没有横线滚动功能,列表数据过多有没有下拉滚动功能。列表数据展现形式为树形结构的,列表数据过多时也要有下拉滚动条。(之前测试遇到过,几白条的树形数据显示没有下拉滚动条,导致数据显示不全,此处一定要注意把测试数据造全)。
列表的列名是否与内容是对应的。
点击某列进行排序,是否会报错(切换查看每一页的排序是否正确),升序及降序排列顺序是否正确。
单击或者双击某列信息,是否会报错。
一条已经成功提交的记录,返回后再提交,是否有提示信息。
检查多次使用返回键的情况,查看页面是否会出错。
输入结束后,直接按回车键,查看系统如何处理,是否支持回车键提交数据,是否会报错。
在系统页面,使用刷新键(页面刷新按钮,或者直接F5),查看系统显示是否正常,是否会报错。
在地址栏直接输入各个功能页面的URL地址,查看是否能直接越权查看,越权提交表单数据,是否有权限控制,查看是否直接跳转到登录页面。
1.风格、样式、颜色是否协调
2.界面布局是否整齐、协调(保证全部显示出来的,尽量不要使用滚动条)
3.界面操作、标题描述是否恰当(描述有歧义、注意是否有错别字)
4.操作是否符合人们的常规习惯(有没有把相似的功能的控件放在一起,方便操作)
5.提示界面是否符合规范(不应该显示英文的cancel、OK,应该显示中文的确定等)
6.界面中各个控件是否对齐
7.日期控件是否可编辑
8.日期控件的长度是否合理,已修改时可以把时间全部显示出来为准
9.查询结果列表列宽是否合理、标签描述是否合理
10.查询结果列表太宽没有横向滚动提示
11.对于信息比较长的文本,文本框没有提功能自动竖直滚动条
12.数据录入控件是否方便
13.有没有支持Tab键,键的顺序要有条理,不乱跳
14.有没有提供相关的热键
15.控件的提示语描述是否正确
16.模块调用是否统一,相同的模块是否调用同一个界面
17.用滚动条移动页面时,页面的控件是否显示正常
18.日期的正确格式应该是XXXX-XX-XX或XXXX-XX-XX XX:XX:XX
19.页面是否有多余按钮或标签
20.窗口标题或图标是否与菜单栏的统一
21.窗口最大化、最小化是否能正确切换
22.对于正常的功能,用户可以不必阅读用户手册就能使用
23.执行风险操作时,有确认、删除等提示
24.操作顺序是否合理
25.正确性检查:检查页面上的form,button,table,header,footer,提示信息,还有其他文字拼写,句子的语法等是否正确。
26.系统应该在用户执行错误的操作之前提出警告,提示信息。
27.页面分辨率检查,在各种分辨率浏览系统检查系统界面友好性。
28.合理性检查:做delete,update,add,cancel,back等操作后,检查信息回到页面是否合理。
29.检查本地化是否通过:英文版不应该有中文信息,英文翻译准确,专业。
兼容性测试不只是指界面在不同操作系统或浏览器的兼容,有些功能方面的测试,也要考虑到兼容性,包括操作系统兼容和应用软件兼容,可能还包括硬件兼容,比如涉及到ajax、jQuery、JavaScript等技术的,都要考虑到不同浏览器下的兼容性问题。
主要是保证链接的可用性和正确性,他是网站测试中比较重要的一个方面。
可以使用特定的工具如XENU来进行链接测试。
业务流程,一般会涉及到多个模块的数据,所以在对业务流程测试时,首先要保证单个功能的正确性,其次就要对各个模块间传递的数据进行测试,这往往是容易出现问题的地方,测试时一定要设计不同的数据进行测试。
1.SQL注入(比如登录页面)
2.XSS跨网站脚本攻击:程序或数据库没有对一些特殊字符进行过滤或处理,导致用户所输入的一些破坏性的脚本语句可能够直接写进数据库中,浏览器会直接执行这些脚本语句,破坏网站的正常显示,或网站用户的信息被盗,构造脚本语句时,要保证脚本的完整性。
3.URL地址后面随便输入一些符号,并尽量是动态参数靠后。
4.验证码更新问题。
5.现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多次的限制,是否可以不登录而直接浏览某个页面等。
6.Web应用系统是否有超时的限制,也就是说,用户登录后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登录才能正常使用。
7.为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。
8.当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。
9.服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试有没有经过授权,就不能在服务器端放置和编辑脚本的问题。
当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。
另外,有些页面超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,是用户得不到真实的页面。
一般来说,需求说明书上会有关于响应速度的要求说明,此处需要注意的是数据量对于响应速度的影响,尤其是日志查看模块。
负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?
负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度。所以,只有放在Internet上,接收负载测试,其结果才是正确可信的。
进行压力测试实际就是破坏一个Web应用系统,测试系统的反应。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。
压力测试的区域包括表单、登录和其他信息传输页面等。
1.在测试时,与网络有关的步骤或者模块必须考虑到断网的情况。
2.每个页面都有相应的Title,不能为空,或者显示“无标题页”。
3.在测试的时候要考虑到页面出现滚动条时,滚动条上下滚动时,页面是否正常。
4.URL不区分大小写,大小写不敏感。
5.对于电子商务网站,当用户并发购买数量大于库存的数量时,系统如何处理。
6.测试数据避免单纯输入“123”、“abc”之类的,让测试数据尽量接近实际。
7.进行测试时,尽量不要用超级管理员进行测试,用新建的用户进行测试。测试人员尽量不要使用同一个用户进行测试。
8.提示信息:提示信息是否完整、正确、详细。
9.帮助信息:是否提供帮助信息,帮助信息的表现形式(页面文字、提示信息、帮助文件),帮助信息是否正确、详细。
10.可扩展性:是否有升级的境地,是否保留了接口。
11.稳定性:运行所需的软硬件配置,占用资源情况,出现问题时的容错性,对数据的保护。
12.运行速度:运行的快慢,带宽占用情况。