1 概述
在一个软件项目开发中,系统测试是保证整体项目质量的重要一环,本文将就网站的测试技术及相应的自动测试工具做一个简要的介绍。主要就如下几个方面进行探讨:
性能测试
安全性测试
稳定性测试
浏览器兼容性测试
可用性/易用性测试
链接测试
代码合法性测试
2 测试内容
2.1 功能测试
在实际工作中,功能在每一个系统中的具有其不确定性,而我们不可能采用穷举的方法进行测试,因而导致了功能测试较为困难,我们依据80/20原则(即80%的错误存在于系统的20%的部分)对于测试用例的设计采用如下两种方法
2.1.1 白盒测试
白盒测试即使用程序设计的控制结构导出测试用例。基于目前的现状我们采用基本路径测试方法进行白盒测试,此种方法简单高效。基本路径测试方法的简单说明如下:
¨ 首先通过系统设计的流程图导出数据流图
¨ 根据数据流图计算其环形复杂性
V(G)=E-N+2
或 V(G)=P+1
V(G):环形负责性
E :流图中边的数量
N :流图中节点的数量
P :流图中判定节点的数量
¨ 我们设定V(G)条路径
¨ 我们设计V(G)条路径的模拟数据
¨ 根据数据进行相应的测试
2.1.2 黑盒测试
黑盒测试即派生出执行程序所有功能需求的输入条件,从而导出测试用例,进行测试的方法,黑盒测试用于辅助白盒测试。
我们采用等价划分的方法进行测试,即为将程序的输入域划分为数据类,以便导出测试用例。一般情况下输入条件为:一个特定的数值、一个数值域、一组相关值或者一个布尔条件。
2.1.3 网站功能测试
对于网站的测试而言,每一个独立的功能模块需要单独的测试用例的设计导出,主要依据为《需求分析》,对于应用程序模块需要设计者提供基本路径测试法的测试用例
具有测试用例后可以采用OpenSTA(Open System Testing Architecture)进行自动化测试
2.2 性能测试
网站的性能测试对于网站的运行而言异常重要,但是目前对于网站的性能测试做的不够,我们在进行系统设计时也没有一个很好的基准可以参考,因而建立网站的性能测试的一整套的测试方案将是至关重要的。
网站的性能测试主要从两个方面进行:负荷测试(Load)和压力测试(Stress),负荷测试指的是进行一些边界数据的测试,压力测试更像是恶意测试,压力测试倾向应该是致使整个系统崩溃。
性能测试可以采用相应的工具进行自动化测试,我们目前采用如下工具
ab -----Apache 的测试工具
OpenSTA—开发系统测试架构
2.3 安全性测试
目前网络安全问题日益重要,特别对于有交互信息的网站及进行电子商务活动的网站尤其重要。目前我们的测试没有涵盖网站的安全性的测试,我们拟定采用工具来测定,工具如下
SAINT------- Security Administrator's Integrated Network Tool
此工具能够测出网站系统的相应的安全问题,并且能够给出安全漏洞的解决方案,不过是一些较为常见的漏洞解决方案。
2.4 稳定性测试
网站的稳定性测试是指网站的运行中整个系统是否运行正常,目前没有更好的测试方案,主要采用将测试服务器长时间运转进行测试。
2.5 浏览器兼容性测试
通过白盒测试或者黑盒测试导出的测试用例,采用相应的工具进行测试,可以采用OpenSTA进行测试,此测试工具可以采用不同的浏览器进行测试。
2.6 可用性/易用性测试
可用性/易用性方面目前我们只能采用手工测试的方法进行评判,而且缺乏一个很好的评判基准进行,此一方面需要大家共同讨论。
2.7 链接测试
超级链接对于网站用户而言意味着能不能流畅的使用整个网站提供的服务,因而链接将作为一个独立的项目进行测试。目前我们已经有了一个测试工具
Xenu------主要测试链接的正确性的工具
可惜的是对于动态生成的页面的测试会出现一些错误。
2.8 代码合法性测试
原文转自:http://www.uml.org.cn/Test/200408305.htm