软件测试技术实验指导书20011年5月
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件测试方法和技术》
实验指导书
太原理工大学计算机科学与技术学院
《软件测试方法和技术》实验
适用专业:软件工程实验类别:专业实验
实验时数:8学时
一、实验课程的性质、目的和任务
1.培养学生初步掌握软件测试技术实验的技能。
2.验证所学理论、巩固所学知识并加深理解。
3.对学生进行实验研究的基本训练,通过实验主要掌握黑盒法和白盒法设计测试用例的技术,运用自动化测试工具LoadRunner对Web软件进行测试,为日后的软件开发和软件测试打下良好的基础。
二、实验课程的内容、要求及学时分配
实验一、使用白盒测试方法中的逻辑覆盖技术测试以下程序段。(2学时)(1)实验目的:通过实验主要掌握用白盒法中的逻辑覆盖测试技术设计测试用例以及测试流程图的绘制。
(2)实验内容:测试以下程序段
Void DoWork(int x,int y,int z)
{
1 int k=0,j=0;
2 if((x>0)&&(z<10))
3 {
4 k=x*y-1;
5 j=sqrt(k);
6 }
7 if((x==4)||(y>5))
8 j=x*y+10;
9 j=j%3;
10 }
(3) 实验要求:说明:程序段中每行开头的数字(1-10)是对每条语句的编号。
a 画出程序的控制流图(用题中给出的语句编号表示)。
b分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖
方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
实验二、为三角形程序设计测试用例。这个程序的功能是,读入代表三角形边长的三个整数,判断它们能否组成三角形。如果能够,则输出三角形是等
边、等腰或任意三角形的识别信息。(2学时)
(1) 实验目的:通过实验主要掌握黑盒法和白盒法设计测试用例的技术。
(2)实验内容:为以下的三角形程序设计一组测试用例。这个程序的功能是,读入代表三角形边长的3个整数, 判断他们能否组成三角形。如果能够组成,则输出三角形是等边,等腰或任意三角形的识别信息。
(3)实验要求:先用黑盒法设计测试用例,然后用白盒法进行检验与补充。用某种高级语言写出程序代码,然后将选好的测试用例输入,给出打印输出结果。该程序的流程图和流图如下:
图2.1程序流程图
图2.2 流图
实验三、使用LoadRunner 对Web软件进行负载/压力测试(4学时)
①实验目的:通过本实验掌握LoadRunner测试工具的使用,对Website应用中至关重要的负载
/压力进行测试分析。
②实验内容:通过LoadRunner提供的功能对Website的并发用户数,事务平均响应时间,网络
吞吐量以及带宽等性能进行测试。
③实验要求:自己编写开发测试脚本,创建运行场景,分析测试结果并找出错误位置和原因,
写出测试结果报告。
附录:loadRunner使用说明(本说明针对LoadRunner7.51 Release)
LoadRunner 包含很多组件,其中最常用的有Visual User Generator(以下简称VuGen)、Controller,Analysis。使用LoadRunner 进行测试的过程可以用图3.1表示
图3.1 LoadRunner测试步骤
下面我们就按照上图的步骤来简单说明使用LoadRunner 的测试过程。
1 制定负载测试计划
在任何类型的测试中,测试计划都是必要的步骤。测试计划是进行成功的负载测试的关键。任何类型的测试的第一步都是制定比较详细的测试计划。一个比较好的测试计划能够保证LoadRunner 能够完成负载测试的目标。
制定负载测试计划一般情况下需要三个步骤,可以用图3.2表示
3.2 制定负载测试计划步骤
下面简单的对这三个过程进行介绍。
1.1 分析应用程序(Analyze the Application)
制定负载测试计划的第一步是分析应用程序。你应该对系统的软硬件以及配置情况非常的熟悉,这样才能保证你使用LoadRunner 创建的测试环境真实的反映实际运行的环境。
● 确定系统的组成
画出系统的组成图。组成图要包括系统中所有的组件,以及相互之间是如何通讯的。
图3.3是一个系统组成图的例子,可以参考。
图3.3 网络系统组成图
● 描述系统配置
画出系统组成图后,试着回答以下问题,对组成图进行完善。
预计有多少用户会连到系统
客户机的配置情况(硬件、内存、操作系统、软件工具等)
服务器使用什么类型的数据库以及服务器的配置情况
客户机和服务器之间如何通讯
还有什么组件会影响Response Time 指标(比如Modem 等)
通讯装置(网卡、路由器等)的吞吐量是多少?每个通讯装置能够处理多少并发用户
● 分析最普遍的使用方法
了解该系统最常用的功能,确定那些功能需要优先测试、什么角色使用该系统以及
每个角色会有多少人、每个角色的地理分布情况等,从而预测负载的最高峰出现的情况。
1.2 确定测试目标(Defining Testing Objectives)
这里通过表3.1来说明如何确定测试目标。
表 3.1 确定测试目标所需考虑的对象
在这里还要确定何时开始负载测试,在不同的阶段进行什么内容的负载测试。可以用表3.2来说明。
表3.2 不同阶段所需的负载测试内容
1.3 计划怎样执行LoadRunner
确定要使用LoadRunner 度量那些性能参数,根据测量结果计算那些参数,从而可以确定Vusers (虚拟用户)的活动,最终可以确定那些是系统的瓶颈等。
在这里还要选择测试环境,测试机器的配置情况等等。
2 开发测试脚本
LoadRunner 使用虚拟用户的活动来模拟真实用户来操作Web 应用程序,而虚拟用户的活动就包含在测试脚本中,所以说测试脚本对于测试来说是非常重要的。
开发测试脚本要使用VuGen 组件。测试脚本要完成的内容有:
◆ 每一个虚拟用户的活动
◆ 定义结合点
◆ 定义事务
开发测试脚本需要几个步骤,可以用图3.4来表示