软件学院
上机实验报告
课程名称:软件测试与评估
实验项目:实验四软件系统性测试
实验室:耘慧416
姓名:
学号:
专业班级:软件13-7
实验时间:2016/5/5
一、实验目的及要求
1.使学生掌握软件系统性测试的基本理论和方法;
2.运用其指导思想进行软件系统的测试。
(1)掌握客户/服务器体系结构测试;
(2)了解图形用户界面测试,能够争取运用对WEB网站进行测试的具体过程和方法设计测试用例;
(3)掌握面向对象测试,并能够设计测试用例。
二、实验性质
验证性
三、实验学时
2学时
四、实验环境
1.主流PC机一套,要求安装windows操作系统、Visual Studio 2008开发工具(或以上或其它开发工具和环境)和OFFICE工具;
2.运用前序.NET课程或者JAVA课程学习的知识进行网站设计;
3.按照分组,开发设计一网站,并对网站进行测试。
五、实验内容及步骤
1.客户端的独立测试;
对客户端的测试主要是属于功能性测试。
用户客户端应用以“分离的”模式被测试,
即这层测试不考虑服务器和底层网络的运行。
通常包括:
客户端的测试——检测客户端的业务逻辑流程的应用
操作系统平台测试——在各种系统平台上进行兼容性测试浏览器测试
2.客户端与服务器端的集成测试;
客户端软件和关联的服务器端应用作一体测试,但并不过多考虑网络运行的关联因素。
对服务器的测试——主要是性能的测试。
测试包含服务器的协调和数据管理功能以及服务器的性能(整体响应时间和数据的吞吐量)的表现。
通常包括:数据库测试、连接速度测试、负载测试、压力测试。
对应用服务器(中间件)的测试
对C/S系统的集成测试一般采用非增量式的方法完成。
此外,C/S测试必须考虑面向对象的测试技术,尤其是C/S系统基本上都采用了GUI(图形用户界面)。
3.整体测试。
对完整的C/S体系结构整体测试,在上述功能测试和性能测试的基础上,还包括网络运行及其性能的测试。
整体测试通常包括以下测试项目:
事务测试——创建一系列的测试以保证每类事务被按照需求处理。
事务测试着重于处理的正确性,同时也关注性能问题。
网络通信测试——用于验证网络节点间的通信是否正常的发生,并且消息传递、事务和相关的网络通信有无错误的发生。
基于Web 的系统测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端的显示是否合适。
重要的是,还要从最终用户的角度进行安全性和可用性测试,从功能、性能、可用性、客户端兼容性、安全性等方面讨论了基于Web的系统测试方法。
对于网页的测试主要包括以下内容:
文字测试:检查用户等级、术语、内容、准确度以及内容的时效性。
链接测试:测试所有链接是否能按照指示的那样正确链接到应当链接的页面;测试所链接的页面是否存在;确保不存在孤立页面(即没有链接指向的页面)。
图形、图像测试:确保有明确的用途;颜色的搭配;图片的大小和质量;所有图形是否能够正确载入和显示。
图形、图像测试。
包括图片、动画、边框、颜色、字体等。
表单测试:检测域的大小;数据接收是否正确;可选域是否真正可选;提交操作的完整性等。
动态内容测试(要求能查看到程序源代码)
Cookies测试:Cookies是否起作用;是否按预定的时间进行保存;刷新对Cookies 有何影响等。
对于网站的测试包括:
功能测试。
性能测试。
数据库测试:在使用了数据库的Web系统中,测试由用户提交的表单信息不正确而引起的数据一致性问题;测试由网络速度或程序设计等问题引起的输出故障。
服务器性能及负载(压力)测试:通过应用模拟的方法实现,即通过某种程序方法(工具软件)模拟上万个链接和下载来判断服务器的响应时间、并发访问数量等性能与负载能力。
可用性测试:包括整体界面测试和导航测试。
安全性测试:测试有效和无效的用户名和密码;测试Web应用系统是否有超时的限制;测试相关信息是否写进了日志文件、是否可追踪;在使用了安全套接字时,测试加密是否正确;在没有经过授权时,测试是否能拒绝在服务器端放置和编辑脚本。
Web压力测试
压力测试是系统测试的一部分,要被设计为通过应用很大的工作负载来使软件超负荷运转,其目的是要弄清楚被测试的Web服务是不是不仅能做预期应能做的事,而且在被施加了某些高强度压力的情况下仍能继续正常运行。
如果压力测试通过对软件保持高强度的使用(不超过性能统计数字确定的限制)能够有效执行,那么它就经常能够发现许多其它测试无法发现的隐蔽错误。
对相关软件的测试过程中,可以采用面向对象的测试方法。
可以参照上述介绍的面
向对象测试模型的相关知识进行测试。
Web压力测试截图:
图1
图2
图3图4
图5
图6
六、实验总结
通过实验四的学习,我学会了web网站的压力测试,通过对网站登陆的这个操作我对网站的负载能力进行了测试,主要是在这个过程中我学会了使用LoadRunner11对软件以及网站进行测试,这使我发现测试并没有想象中的那么简单,而且感叹能够编写出
这么优秀的测试软件的人们的伟大,感觉自己的编程能力真的需要不断提高,差的太多了,需要不断努力学习专业知识,这样才能够有所提高。
附录源程序清单
<%@ page language="java" import=".*" pageEncoding="utf-8"%>
<%
String path = ();
String basePath = ()+":<br>
用户名:<input type="text" name="user" / > <br>
密码:<input type="text" name="mima" /> <input type="submit" value="登陆" />
</form>
</body>
</html>。