写测试用例的时候,不能想到什么就写什么,要按照一定的测试用例模板去写,要有自己的思路,不能完全去套用模拟以前的测试用例,按照一整套的测试流程来分析重要的关注点,时间长也会有自己积累的一套的测试模式,按照框架的思路,可能会达到事半功倍的效果哦!
功能测试框架一般情况就是包含以下几类:界面友好性测试、功能测试、页面链接测试、容错测试、稳定性测试、性能测试(简单方面)等等。
1.1.1 界面友好性测试
风格、样式的协调性是否合理
界面布局是否整齐,尽量不要使用滚动条
界面操作、标题描述要恰当
操作符合大众的常规习惯
提示界面符合规范(不要出现中英混写)
界面中各个控件是否整齐美观
日期控件是否可正常编辑、长度是否合理,保证修改时可以把时间全部显示
查询结果列表列宽是否合理、标签描述是否合理、太宽需要有横向滚动提示
对于信息比较长的文本,文本框需提供自动竖直滚动条
支持Tab键,使用时不会出现乱跳情况
有没有提供相关的热键
控件的提示语描述是否正确
模块调用是否统一,相同的模块是否调用同一个界面
用滚动条移动页面时,页面的控件是否显示正常
时期的显示格式是否正确
页面是否有多余无用的按钮或标签
窗口标题或图标要菜单栏统一,且最大化最小化操作是否正常
对于正常的功能,操作简单明了
执行风险操作时,要有相关的提示
正确性检查:检查页面上的form, button, table, header, footer,提示信息,还有其他文字拼写,句子的语法等是否正确。
系统应该在用户执行错误的操作之前提出警告,提示信息.
页面分辨率检查,不同的分辨率浏览是否会出现乱码等不友好的界面出现
合理性检查:做delete, update, add, cancel, back等操作后,查看返回的页面是否合理。
1.1.2 功能测试
先使用系统给出的默认值测试
遍历测试系统流程,参照相关文档资料
查看系统的流程逻辑是否合理
异常场景的分支遍历测试
根据需求文档的流程图遍历所有流程图路径
界面中的控件进行测试
如对于输入框测试:
一、字符型输入框:
字符型输入框:英文全角、英文半角、数字、空格、特殊字符“~!@#¥%……&*?[]{}”特别要注意单引号和&符号。禁止直接输入特殊字符时,使用“粘贴、拷贝”功能尝试输入。
长度检查:边界值测试,无效等价类的测试,已经复制比较多的文本是否能够粘贴进去。
空格检查:字符间有空格、空格在前或在后、前后都有空格
多行文本框输入:允许回车换行、仅输入回车换行,检查能否正确保存
安全性检查:输入特殊字符串:比如HTML格式的语言
二、数值型输入框:
边界值:最大值、最小值、最大值+1、最小值-1
位数:最小位数、最大位数、最小位数-1最大位数+1、输入超长值、输入整数
3.异常值、特殊字符:输入空白(NULL)、空格或"[email protected]#$%^&*()_+{}|[]:"<>?;‘,./?;:‘-=等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如∑,㏒,㏑,∏,+,-等、
输入负整数、负小数、分数、输入字母或汉字、小数(小数前0点舍去的情况,多个小数点的情况)、首位为0的数字如01、02、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币型输入(允许小数点后面几位)、
安全性检查:黏贴不能输入的内容检查
三、日期型输入框:
合法性检查:(输入0日、1日、32日)、月输入[1、3、5、7、8、10、12]、日输入[31]、月输入[4、6、9、11]、日输入[30][31]、输入非闰年,月输入[2],日期输入[28、29]、输入闰年,月输入[2]、日期输入[29、30]、月输入[0、1、12、13]
考虑开始日期与结束日历的比较,特别是在查询的时候.
异常值、特殊字符:输入空白或NULL、输入~!@#¥%……&*(){}[]等可能导致系统错误的字符
安全性检查:黏贴不能输入的内容检查
1.1.3 业务流程测试(主要功能测试)
业务流程,一般会涉及到多个模块的数据,所以在对业务流程测试时,首先要保证单个模块功能的正确性,其次就要对各个模块间传递的数据进行测试,这往往是容易出现问题的地方,测试时一定要设计不同的数据进行测试。
如某一功能模块具有最基本的增删改查功能,则需要进行以下测试:
单项功能测试(增加、修改、查询、删除)
增加——>增加——>增加 (连续增加测试)
增加——>删除
增加——>删除——>增加 (新增加的内容与删除内容一致)
增加——>修改——>删除
修改——>修改——>修改 (连续修改测试)
修改——>增加(新增加的内容与修改前内容一致)
修改——>删除
修改——>删除——>增加 (新增加的内容与删除内容一致)
删除——>删除——>删除 (连续删除测试)
1.1.4 链接测试
主要保证链接的可用性和正确性。
1.1.5 容错测试
输入不符合规则的数据检查
停止某模块,检查对当前系统的影响
配置出现错误和删除配置文件检查
数据库错误注入
1.1.6 稳定性测试
系统7*24不间断运行,检查是否会出现内存泄露、系统其他资源是否存在泄露
一般压力很大的情况下,数据库连接数问题、内存泄露问题会曝露的比较快但是死锁可能不能体现。
1.1.7 常规性能测试
连接速度测试
如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。
负载测试
测量Web系统在某负载级别上的性能,以保证Web系统在需求范围内能正常工作。可以是某个时刻同时访问的用户数量,也可以是在线数据处理的数量。例如:最多支持多少用户同时在线?如果超出,系统会怎么样?
负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。只有放在Internet上负载测试,其结果才是正确可信的。
进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。
压力测试包括表单、登陆和其他信息传输页面等
1.1.8 易用性测试
系统界面的控件是否可以通过tab键遍历,并且顺序合理
主要功能的入口和操作是否易于理解
界面是否布局合理,功能是否易于查找和使用
操作步骤和习惯是否符合逻辑
有足够的提示信息,且信息文字描述准确
1.1.9 兼容性测试
有些功能实现也会因为兼容性问题出现故障,这功能测试要考虑到兼容性问题,