- 浏览: 138862 次
- 性别:
- 来自: 北京
文章分类
最新评论
//////// 单元测试 /////
单元测试大多数由开发人员来完成,测试人员技术背景较好或者开发系统软件时可能会安排测试人员进行单元测试,大多数进行的单元测试都是开发人员调试程序或者开发组系统联合调试的过程。
单元测试一般包括五个方面的测试:
一、
模块接口测试
模块接口测试是单元测试的基础。只有在数据能正确流入、流出模块的前提下,其他测试才有意义。模块接口测试也是集成测试
的重点,这里进行的测试主要是为后面打好基础。
测试接口正确与否应该考虑下列因素: 1、输入的实际参数与形式参数的个数是否相同;
2、输入的实际参数与形式参数的属性是否匹配;
3、输入的实际参数与形式参数的量纲是否一致;
4、调用其他模块时所给实际参数的个数是否与被调模块的形参个数相同;
5、调用其他模块时所给实际参数的属性是否与被调模块的形参属性匹配;
6、调用其他模块时所给实际参数的量纲是否与被调模块的形参量纲一致;
7、调用预定义函数时所用参数的个数、属性和次序是否正确;
8、是否存在与当前入口点无关的参数引用;
9、是否修改了只读型参数;
10、对全程变量的定义各模块是否一致;
11、是否把某些约束作为参数传递。
如果模块功能包括外部输入输出,还应该考虑下列因素: 1、文件属性是否正确;
2、OPEN/CLOSE语句是否正确;
3、格式说明与输入输出语句是否匹配;
4、缓冲区大小与记录长度是否匹配;
5、文件使用前是否已经打开;
6、是否处理了文件尾;
7、是否处理了输入/输出错误;
8、输出信息中是否有文字性错误。
二、
局部数据结构测试
检查局部数据结构是为了保证临时存储在模块内的数据在程序执行过程中完整、正确,局部功能是整个功能运行的基础。重点是一些函数是否正确执行,内部是否运行正确。
局部数据结构往往是错误的根源,应仔细设计测试用例,力求发现下面几类错误: 1、不合适或不相容的类型说明;
2、变量无初值;
3、变量初始化或省缺值有错;
4、不正确的变量名(拼错或不正确地截断);
5、出现上溢、下溢和地址异常。
三、
边界条件测试
边界条件测试是单元测试中最重要的一项任务。众所周知,软件经常在边界上失效,采用边界值分析技术,针对边界值及其左、右设计测试用例,很有可能发现新的错误。边界条件测试是一项基础测试,也是后面系统测试
中的功能测试
的重点,边界测试执行的较好,可以大大提高程序健壮性。
四、
模块中所有独立路径测试
在模块中应对每一条独立执行路径进行测试,单元测试的基本任务是保证模块中每条语句至少执行一次。测试目的主要是为了发现因错误计算、不正确的比较和不适当的控制流造成的错误。具体做法就是程序员
逐条调试语句。
常见的错误包括: 1、误解或用错了算符优先级;
2、混合类型运算;
3、变量初值错;
4、精度不够;
5、表达式符号错。
比较判断与控制流常常紧密相关,测试时注意下列错误: 1、不同数据类型的对象之间进行比较;
2、错误地使用逻辑运算符或优先级;
3、因计算机表示的局限性,期望理论上相等而实际上不相等的两个量相等;
4、比较运算或变量出错;
5、循环终止条件或不可能出现;
6、迭代发散时不能退出;
7、错误地修改了循环变量。
五、模块的各条错误处理通路测试
程序在遇到异常情况时不应该退出,好的程序应能预见各种出错条件,并预设各种出错处理通路。如果用户不按照正常操作,程序就退出或者停止工作,实际上也是一种缺陷
,因此单元测试要测试各种错误处理路径。
一般这种测试着重检查下列问题: 1、输出的出错信息难以理解;
2、记录的错误与实际遇到的错误不相符;
3、在程序自定义的出错处理段运行之前,系统已介入;
4、异常处理不当;
5、错误陈述中未能提供足够的定位出错信息。
////////////// 网站测试 //////////
一、功能测试
1、
链接测试
(1)、测试所有链接是否按指示的那样确实链接到了该链接的页面;
(2)、测试所链接的页面是否存在;
(3)、保证Web应用系统上没有孤立的页面(所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问)。
2、表单测试
(1)、注册、登陆、信息提交等,必须测试提交操作的完整性,以校验提交给服务器的信息的正确性;
(2)、用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等;
(3)、检验默认值的正确性;
(4)、如表单只能接受指定的某些值,测试时跳过这些字符,看系统是否会报错。
3、Cookies测试(session测试同)
(1)、Cookies是否起作用;
(2)、Cookies是否按预定的时间进行保存;
(3)、刷新对Cookies有什么影响。
4、设计语言测试
(1)、使用哪种版本的HTML;
(2)、验证脚本语言Javascrīpt。
5、
数据库
测试
(1)、数据一致性错误:主要是由于用户提交的表单信息不正确而造成的;
(2)、输出错误:主要是由于网络速度或程序设计问题等引起的。
二、
性能测试
1、连接速度测试
(1)、Web系统响应时间;
(2)、超时的限制。
2、负载测试
(1)、某个时刻同时访问Web系统的用户数量;
(2)、也可以是在线数据处理的数量。
3、
压力测试
(1)、压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。
(2)、压力测试的区域包括表单、登陆和其他信息传输页面等。
三、可用性测试
1、导航测试
(1)、导航是否直观
(2)、Web系统的主要部分是否可通过主页存取
(3)、系统是否需要站点地图、搜索引擎或其他的导航帮助
(4)、Web应用系统的页面结构、导航、菜单、连接的风格是否一致
(5)、Web应用系统导航帮助要尽可能地准确。Web应用系统的层次一旦决定,就要着手测试用户导航功能。
2、图形测试
一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:
(1)、要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间;
(2)、Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面;
(3)、验证所有页面字体的风格是否一致;
(4)、背景颜色应该与字体颜色和前景颜色相搭配;
(5)、图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。
3、内容测试
检验Web应用系统提供信息的正确性、准确性和相关性。
信息的正确性是指信息是可靠的还是误传的 。
4、整体界面测试
整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个Web应用系统的设计风格是否一致?当然,对界面的整体测试并不能单靠个人直觉来评定;每个人的审美观、专业角度、系统面向的行业及用户、甚至性别与年龄等等,都是可能导致对界面作出不同评价的因素。所以要明白在对整体界面的测试过程中,其实是一个对最终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。
四、兼容性测试
1、平台测试
在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。
2、浏览器测试
(1)、浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java,、Javascrīpt、ActiveX、 plug-ins或不同的HTML规格有不同的支持。
(2)、测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。
五、安全性测试
(1)、现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等;
(2)、Web应用系统是否有超时的限制,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用;
(3)、为了保证Web应用系统的安全性,需要测试相关信息是否写进了日志文件、是否可追踪;
(4)、当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性;
(5)、服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
(6)、通过模拟攻击的形式拷贝Web应用程序的某个功能点的url地址,然后打开新的页面输入该url地址看其是否能跨过系统的登录模块直接进入该功能点。
单元测试大多数由开发人员来完成,测试人员技术背景较好或者开发系统软件时可能会安排测试人员进行单元测试,大多数进行的单元测试都是开发人员调试程序或者开发组系统联合调试的过程。
单元测试一般包括五个方面的测试:
一、
模块接口测试
模块接口测试是单元测试的基础。只有在数据能正确流入、流出模块的前提下,其他测试才有意义。模块接口测试也是集成测试
的重点,这里进行的测试主要是为后面打好基础。
测试接口正确与否应该考虑下列因素: 1、输入的实际参数与形式参数的个数是否相同;
2、输入的实际参数与形式参数的属性是否匹配;
3、输入的实际参数与形式参数的量纲是否一致;
4、调用其他模块时所给实际参数的个数是否与被调模块的形参个数相同;
5、调用其他模块时所给实际参数的属性是否与被调模块的形参属性匹配;
6、调用其他模块时所给实际参数的量纲是否与被调模块的形参量纲一致;
7、调用预定义函数时所用参数的个数、属性和次序是否正确;
8、是否存在与当前入口点无关的参数引用;
9、是否修改了只读型参数;
10、对全程变量的定义各模块是否一致;
11、是否把某些约束作为参数传递。
如果模块功能包括外部输入输出,还应该考虑下列因素: 1、文件属性是否正确;
2、OPEN/CLOSE语句是否正确;
3、格式说明与输入输出语句是否匹配;
4、缓冲区大小与记录长度是否匹配;
5、文件使用前是否已经打开;
6、是否处理了文件尾;
7、是否处理了输入/输出错误;
8、输出信息中是否有文字性错误。
二、
局部数据结构测试
检查局部数据结构是为了保证临时存储在模块内的数据在程序执行过程中完整、正确,局部功能是整个功能运行的基础。重点是一些函数是否正确执行,内部是否运行正确。
局部数据结构往往是错误的根源,应仔细设计测试用例,力求发现下面几类错误: 1、不合适或不相容的类型说明;
2、变量无初值;
3、变量初始化或省缺值有错;
4、不正确的变量名(拼错或不正确地截断);
5、出现上溢、下溢和地址异常。
三、
边界条件测试
边界条件测试是单元测试中最重要的一项任务。众所周知,软件经常在边界上失效,采用边界值分析技术,针对边界值及其左、右设计测试用例,很有可能发现新的错误。边界条件测试是一项基础测试,也是后面系统测试
中的功能测试
的重点,边界测试执行的较好,可以大大提高程序健壮性。
四、
模块中所有独立路径测试
在模块中应对每一条独立执行路径进行测试,单元测试的基本任务是保证模块中每条语句至少执行一次。测试目的主要是为了发现因错误计算、不正确的比较和不适当的控制流造成的错误。具体做法就是程序员
逐条调试语句。
常见的错误包括: 1、误解或用错了算符优先级;
2、混合类型运算;
3、变量初值错;
4、精度不够;
5、表达式符号错。
比较判断与控制流常常紧密相关,测试时注意下列错误: 1、不同数据类型的对象之间进行比较;
2、错误地使用逻辑运算符或优先级;
3、因计算机表示的局限性,期望理论上相等而实际上不相等的两个量相等;
4、比较运算或变量出错;
5、循环终止条件或不可能出现;
6、迭代发散时不能退出;
7、错误地修改了循环变量。
五、模块的各条错误处理通路测试
程序在遇到异常情况时不应该退出,好的程序应能预见各种出错条件,并预设各种出错处理通路。如果用户不按照正常操作,程序就退出或者停止工作,实际上也是一种缺陷
,因此单元测试要测试各种错误处理路径。
一般这种测试着重检查下列问题: 1、输出的出错信息难以理解;
2、记录的错误与实际遇到的错误不相符;
3、在程序自定义的出错处理段运行之前,系统已介入;
4、异常处理不当;
5、错误陈述中未能提供足够的定位出错信息。
////////////// 网站测试 //////////
一、功能测试
1、
链接测试
(1)、测试所有链接是否按指示的那样确实链接到了该链接的页面;
(2)、测试所链接的页面是否存在;
(3)、保证Web应用系统上没有孤立的页面(所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问)。
2、表单测试
(1)、注册、登陆、信息提交等,必须测试提交操作的完整性,以校验提交给服务器的信息的正确性;
(2)、用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等;
(3)、检验默认值的正确性;
(4)、如表单只能接受指定的某些值,测试时跳过这些字符,看系统是否会报错。
3、Cookies测试(session测试同)
(1)、Cookies是否起作用;
(2)、Cookies是否按预定的时间进行保存;
(3)、刷新对Cookies有什么影响。
4、设计语言测试
(1)、使用哪种版本的HTML;
(2)、验证脚本语言Javascrīpt。
5、
数据库
测试
(1)、数据一致性错误:主要是由于用户提交的表单信息不正确而造成的;
(2)、输出错误:主要是由于网络速度或程序设计问题等引起的。
二、
性能测试
1、连接速度测试
(1)、Web系统响应时间;
(2)、超时的限制。
2、负载测试
(1)、某个时刻同时访问Web系统的用户数量;
(2)、也可以是在线数据处理的数量。
3、
压力测试
(1)、压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。
(2)、压力测试的区域包括表单、登陆和其他信息传输页面等。
三、可用性测试
1、导航测试
(1)、导航是否直观
(2)、Web系统的主要部分是否可通过主页存取
(3)、系统是否需要站点地图、搜索引擎或其他的导航帮助
(4)、Web应用系统的页面结构、导航、菜单、连接的风格是否一致
(5)、Web应用系统导航帮助要尽可能地准确。Web应用系统的层次一旦决定,就要着手测试用户导航功能。
2、图形测试
一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:
(1)、要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间;
(2)、Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面;
(3)、验证所有页面字体的风格是否一致;
(4)、背景颜色应该与字体颜色和前景颜色相搭配;
(5)、图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。
3、内容测试
检验Web应用系统提供信息的正确性、准确性和相关性。
信息的正确性是指信息是可靠的还是误传的 。
4、整体界面测试
整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个Web应用系统的设计风格是否一致?当然,对界面的整体测试并不能单靠个人直觉来评定;每个人的审美观、专业角度、系统面向的行业及用户、甚至性别与年龄等等,都是可能导致对界面作出不同评价的因素。所以要明白在对整体界面的测试过程中,其实是一个对最终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。
四、兼容性测试
1、平台测试
在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。
2、浏览器测试
(1)、浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java,、Javascrīpt、ActiveX、 plug-ins或不同的HTML规格有不同的支持。
(2)、测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。
五、安全性测试
(1)、现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等;
(2)、Web应用系统是否有超时的限制,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用;
(3)、为了保证Web应用系统的安全性,需要测试相关信息是否写进了日志文件、是否可追踪;
(4)、当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性;
(5)、服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
(6)、通过模拟攻击的形式拷贝Web应用程序的某个功能点的url地址,然后打开新的页面输入该url地址看其是否能跨过系统的登录模块直接进入该功能点。
发表评论
-
新服务器初始化
2016-02-19 15:04 6441.更改密码 ssh root@127.0.0.1 ... -
面向对象-四项基本原则
2015-12-21 10:33 698单一职责 高内聚,低耦合 中意于组合而不是继承 依赖于 ... -
淘宝的估算并发量公式
2015-12-15 11:31 1015估算并发量: QPS = 日PV × 读写次数/PV ÷ ... -
调试 函数调用栈
2015-12-08 22:13 567.debug_print_backtrace() debu ... -
增长黑客笔记
2015-10-20 10:24 652http://toutiao.io/r/0e92fi -
[转]一页纸商业计划书 (Business Plan) 模板
2015-09-07 10:48 1177http://blog.eood.cn/business-p ... -
猴子都能懂的git入门
2015-04-23 16:28 908http://backlogtool.com/git-gu ... -
HTTP 设计指北
2015-04-23 16:05 509https://github.com/bolasblack/ ... -
mysql开发规范
2015-01-15 18:24 5721. 库名、表名、字段名 必须使用小写字 ... -
紧急bug处理流程
2015-01-15 18:09 5201. 确认问题 2. 严重程度,影响到的相关功能 3. ... -
[转] 工程师追查线上问题(或运维)常用的shell命令
2015-01-15 18:03 6581、日志分析类: ... -
svn 一次提交所有新增文件
2013-11-17 19:14 677svn st | grep '^\?' | tr '^\? ... -
用strace调试linux 程序
2013-07-29 17:46 740<strong>安装</stro ... -
svn 解决冲突常用
2012-12-05 10:30 702常用操作,注意 短横线别是 全角的 1、svn upda ... -
【转】Vim + Xdebug + DBGp 调试环境
2012-12-05 10:31 952要求:PHP 5+ with Xdebug, Python ... -
Favicon.ico
2011-11-10 11:10 1089<link rel="icon" h ... -
雅虎线上压缩图片网址
2011-11-10 11:07 817http://www.smushit.com/ysmush.i ... -
与尔同消万古愁
2011-10-30 18:24 45重要的是方法论的提炼,oop思想和亲自经历,上面一 ... -
PHP持续集成工具
2011-10-26 13:57 944Hudson(PHP、phing、xdebug、phpD ... -
xdebug
2011-10-10 13:51 8841. 下载xdebug http://www.xd ...
相关推荐
设计界面Web测试中的界面测试用例设计软件测试一、文本框、按钮等控件测试1、文本框的测试如何对文本框进行测试:a、输入正常的字母或数字;b、输入已存在的文件的名称;c、输入超长字符。例如在“名称”框中输入超过...
全国大学生软件测试大赛的Web测试赛道是一场专为提升高校学生软件测试技能的竞赛,尤其关注Web应用程序的测试。2020年省赛的真题聚焦于网易云音乐,提供了一系列测试用例、需求文档和界面设计,要求参赛者运用测试...
《软件测试WEB测试论文》详述了软件测试的关键性及其在现代互联网应用中的核心地位,特别是针对WEB应用程序的测试方法。这篇论文深入探讨了软件测试的重要性,解释了它如何确保产品的质量和用户满意度,同时通过一个...
在Web测试中,系统测试报告通常会涵盖以下主要内容: 1. **引言** - **编写目的**:明确报告的目的,比如验证系统功能的正确性,评估性能指标是否满足需求,为项目决策提供依据。 - **预期读者**:指明报告的目标...
**WEB测试计划模板详解** 在软件开发过程中,Web测试是一个至关重要的环节,它确保了Web应用程序的质量、稳定性和用户体验。一个良好的Web测试计划是保证测试效率和效果的关键。本篇文章将详细解读“WEB测试计划...
### Web测试技术大全:全方位解析Web测试的关键领域 #### Web技术概览 Web测试是确保Web应用程序质量和用户体验的重要环节,涵盖了从功能验证到性能、安全性的全面评估。本篇文章将深度解析Web测试技术,包括自动...
Web 测试是一个复杂的过程,它涉及到多个方面的测试,包括界面测试、功能测试、兼容性测试、性能测试等。在本文中,我们将总结 Web 测试的经验,包括界面测试要素、功能测试技术、兼容性测试、性能测试等方面。 一...
本资源“测试工程师面试宝典”聚焦于Web测试、功能测试以及测试用例设计,这些都是测试工程师面试时经常遇到的核心话题。下面将详细阐述这些领域的关键知识点。 一、Web测试 Web测试是针对基于Web的应用程序进行的...
web测试常用的用例及知识 1. Web测试中关于登录的测试 2. 搜索功能测试用例设计 3. 翻页功能测试用例 4. 输入框的测试 5. Web测试的常用的检查点 6. 用户及权限管理功能常规测试方法 7. Web测试之兼容性...
Web测试是软件测试领域中的一个重要分支,主要针对基于Web的应用程序进行验证和确认,确保其在各种条件下能够正常运行并满足预期功能。本篇学习笔记将深入探讨Web测试的关键概念、工具和技术。 首先,让我们从Web...
本文旨在分享一位IT行业高手对于WEB测试的理解,尤其侧重于基于Java平台的测试技术,以期为企业提供全面、深入的WEB测试方法论。 #### 二、测试方法与策略 **2.1 界面测试** 界面测试是WEB测试中不可或缺的一环,...
在IT行业中,Web测试是确保网站功能正常、性能优秀及安全性的重要环节。这份"web测试相关资料"包含的丰富内容涵盖了网站测试用例、性能测试入门以及安全性测试,这些都是Web测试不可或缺的部分。 首先,让我们详细...
Web测试是软件测试领域中的一个重要组成部分,主要针对基于Web的应用程序进行质量验证。在这个"web测试项目.zip"中,我们可能包含了一系列与Web应用测试相关的文档、代码、配置文件和其他资源。下面,我将详细解释...
【Web测试技术综述】 随着信息技术(IT)和网络通信技术(ICT)的快速发展,测试在确保产品质量和安全中的作用愈发重要。Web测试作为其中的关键环节,尤其在Web服务技术广泛应用的背景下,面临着新的挑战。Web测试...
在进行Web测试时,我们需要关注多个层面,包括功能测试、性能测试、安全性测试、兼容性测试等。Web测试主要目的是确保Web应用的稳定性和用户体验。以下是对Web测试的详细说明: 1. **功能测试**: 功能测试是验证...
根据给定的信息,我们可以从标题、描述以及部分内容中提取出一系列与Web测试相关的知识点。以下是对这些知识点的详细解析: ### Web测试通用测试用例 #### 标题概述: 标题“Web测试通用测试用例”指出了文档的...
WEB测试是针对基于Web技术构建的信息系统进行的一种关键质量保证活动。它涵盖了多个方面,确保系统功能正确、性能优良、用户友好、安全可靠,并能在不同的客户端和接口环境中正常运行。 首先,我们要理解Web信息...
在IT行业中,Web测试是确保网站或Web应用程序质量的关键环节。Web测试报告是对这一过程的总结,详尽地记录了测试过程、发现的问题以及解决策略。"web测试报告.zip"这个压缩包文件很可能包含了多种类型的Web测试报告...