当前位置:文档之家› 软件测试实验报告

软件测试实验报告

软件测试实验报告
软件测试实验报告

武汉理工大学

学生实验报告书

实验课程名称软件测试

开课学院计算机科学与技术学院

指导老师姓名毛雪涛

学生姓名

学生专业班级

2014 —2015 学年第一学期

任务1:针对一个常用的通讯软件做黑盒测试,利用所学的黑盒测试方法来设计测试用例,并做相应测试,给出测试方案和测试报告。

实验一.通讯软件飞信个人生日填写测试用例一.简介

1.1编写目的

本测试项目拟对通讯聊天工具飞信输入生日日期进行测试。

1.2项目背景

通讯聊天工具中都会有用户填写个人的基本资料,其中生日日期的填写需要进行则是。本项目即为用软件测试输入个人生日日期的正确性。

1.3术语

等价类划分:把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。

1.4参考资料

软件测试佟伟光主编人民邮电出版社

黑盒测试用例设计示例作者: chinaitlab 来源: chinaitlab

二.测试概要

2.1测试程序源代码

#include

using namespace std;

void NextDate(int year,int month,int day);

void main()

{

int year=0,month=0,day=0;

NextDate(year,month,day);

}

void NextDate(int year,int month,int day)

{

cout<<"请输入年份:"<

cin>>year;

while(!(year>=1811 && year<=2013))

{

cout<<"年份超过界限,请重新输入"<

cin>>year;

}

cout<<"请输入月份:"<

cin>>month;

while (month>12||month<1)

{

cout<<"月份输入有误,请重新输入"<

cin>>month;

}

cout<<"请输入日期:"<

cin>>day;

while (day>31||day<1)

{

cout<<"日期输入有误,请重新输入"<

cin>>day;

}

if((year%4==0 && year%100!=0) || (year%400==0)) //检查闰年;

{

int i=0;

i=day-29;

while(month==2&&i>0)

{

cout<<"本月是闰月,请在1-29之间从新输入日期"<

cin>>day;

}

if(month==2&&day==29)

{

month=3;

day=1;

}

else day++;

}

else day++;

//月底计算;

switch(month)

{

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

if (day==32)

{

month++;

day=1;

cout<<"明天是:"<

}

break;

case 2:

if(day==29)

{

month=3;

day=1;

cout<<"明天是:"<

}

break;

case 4:

case 6:

case 9:

case 11:

if(day==31)

{

month++;

day=1;

cout<<"明天是:"<

}

break;

case 12:

if(day==32)

{

year++;

month=1;

day=1;

cout<<"明天是:"<

}

break;

}

cout<<"明天是:"<

}

2.2测试用例设计

利用等价类划分法设计测试用例如下:

用例一:输入日期年份超过界限,如输入:20151104;

用例二:输入日期月份输入有误,如输入:19931304;

用例三:输入日期输入有误,如输入:19931144;

用例四:输入日期包含非数字字符,如输入:1993佛说!;

用例五:输入日期超过8位数字,如:1993110402;

用例六:输入日期短于8位数字,如:1993114;

用例七:输入年份为闰年且输入月份为2,日期超过29,如:20000230,

2.3测试方法

手工利用黑盒测试中的等价类划分法进行测试,主要测试目标为检验函数是否符合题目所给要求。即:输入是否符合规定条件,及程序的鲁棒性。

三.测试结果及缺陷分析

3.1测试执行情况与记录

测试情况记录:

1、输入日期20151104,程序提醒“年份超过界限,请重新输入”。

2、输入日期19931304,程序提醒“月份输入有误,请重新输入”。

3、输入日期19931144,程序提醒“日期输入有误,请重新输入”。

4、输入日期1993佛说!,程序没有提醒,合理的应该出现提醒“输入非数字

字符,请重新输入”。

5、输入日期1993110402,程序没有提醒,合理的应该出现提醒“输入字符超

过8位,请重新输入”。

6、输入日期1993114,程序没有提醒,合理的应该出现提醒“输入字符短于8

位,请重新输入”。

7、输入日期20000230,程序提醒“本月是闰月,请在1-29之间从新输入日

期”。

3.2缺陷统计与分析

缺陷:对于大部分不适当输入格式没有较好的处理.

分析:程序对于年份超过范围,月份出错以及日期不对,二月份日期的特殊性都有考虑,出现合理的提醒;但对于输入日期包含非数字字符、输入的数字串为超过8位数或者短于8位数没有考虑在内,应该给出处理。

3.3 测试结论

程序对于年份超过范围,月份出错以及日期不对,二月份日期的特殊性都有考虑,对于出现此类能够有合理的处理;但对于输入日期包含非数字字符、输入的数字串为超过8位数或者短于8位数没有考虑在内,应该给出处理。

任务2:学习任一种自动化测试工具的使用方法,并结合所学的软件测试技术,利用测试工具对某个程序或功能模块做测试,给出测试方案,测试报告,方案报告中要包括你的完整的测试过程和测试用例的设计。

实验二. 使用LoadRunner进行压力测试

一.LoadRunner 概要介绍

1.1简介

LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner ,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢,系统崩溃等问题。这些都不可避免地导致公司收益的损失。Mercury Interactive 的LoadRunner 能让企业保护自己的收入来源,无需购置额外硬件而最大限度地利用现有的IT 资源,并确保终端用户在应用系统的各个环节中对其测试应用的质量,可靠性和可扩展性都有良好的评价。LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。

1.2基本步骤

使用LoadRunner 完成测试一般分为四个步骤:

1)Vvitrual User Generator 创建脚本

?创建脚本,选择协议

?录制脚本

?编辑脚本

?检查修改脚本是否有误

2)中央控制器(Controller)来调度虚拟用户

?创建Scenario,选择脚本

?设置机器虚拟用户数

?设置Schedule

?如果模拟多机测试,设置Ip Spoofer

3)运行脚本

?分析scenario

4)分析测试结果

二.项目背景介绍

2.1 背景概述

“LMS网校考试平台”是一个典型的三层B/S架构的MIS系统(客户端/应用服务器/数据库管),中间层是业务逻辑层,应用服务器处理所有的业务逻辑,但应用服务器本身不提供负载均衡的能力,而是利用开发工具提供的ORB(对象请求代理)软件保证多个应用服务器间的负载均衡。本次测试的目的是:进行应用服务器的压力测试,找出应用服务器能够支持的最大客户端数。方法是:按照正常业务压力估算值的1~10倍进行测试,考察应用服务器的运行情况。

2.2压力测试用例

场景描述一:

1.用户登录的lmm模块,总共登陆24个用户,所有用户都同时并发操作。

2.用户点击“登记的教程”

3.用户点击“启动”,进行课程学习,进入DS模块

4.在DS模块中进行学习,过程包括:首先,点击一次课程结构树;然后,进行课程内容的学习。

5.点击“返回LMS”按钮,返回到lmm模块,点击“退出”按钮,退出系统

场景描述二:

1.用户登陆lmm模块,总共登录48个用户,每1秒登录1个用户

2.用户点击“已登记教程”

3.用户点击“启动”,进行课程学习,进入DS模块

4.在DS模块中进行学习,过程包括:首先,点击一次课程结构树;然后,进行课程

内容的学习;

5.点击“返回LMS”按钮,返回到lmm模块,点击“退出”按钮,退出系统

场景描述三:

1.用户登录的lmm模块,总共登陆48个用户,所有用户都同时并发操作。

2.用户点击“登记的教程”

3.用户点击“启动”,进行课程学习,进入DS模块

4.在DS模块中进行学习,过程包括:首先,点击一次课程结构树;然后,进行课程内容的学习。

5.点击“返回LMS”按钮,返回到lmm模块

点击“退出”按钮,退出系统

场景描述四:

1.用户登录的lmm模块,总共登陆48个用户,每秒同时登录10个用户。

2.用户点击“登记的教程”

3.用户点击“启动”,进行课程学习,进入DS模块

4.在DS模块中进行学习,过程包括:首先,点击一次课程结构树;然后,进行课程内容的学习。

5.点击“返回LMS”按钮,返回到lmm模块,点击“退出”按钮,退出系统

场景描述五:

1.用户登录的lmm模块,总共登陆100个用户,所有用户同时并发操作。

2.用户点击“登记的教程”

3.用户点击“启动”,进行课程学习,进入DS模块

4.在DS模块中进行学习,过程包括:首先,点击一次课程结构树;然后,进行课程内容的学习。

5.点击“返回LMS”按钮,返回到lmm模块

场景描述六:

1.用户登录的lmm模块,总共登陆200个用户,所有用户同时并发操作

2.用户点击“登记的教程”

3.用户点击“启动”,进行课程学习,进入DS模块

4.在DS模块中进行学习,过程包括:首先,点击一次课程结构树;然后,进行课程内容的学习。

5.点击“返回LMS”按钮,返回到lmm模块,点击“退出”按钮,退出系统

场景描述七:

1.户登录的lmm模块,总共登陆24个用户。所有用户都同时并发操作

2.所有用户都同时并发操作,户点击“登记的教程”中“test”课件

使用自发测试工具,目的测试24个用户同时打开课件时服务器性能

场景描述八:

1.登录的lmm模块,总共登陆60个用户。所有用户都同时并发操作

2.有用户都同时并发操作,户点击“登记的教程”中“test”课件

使用自发测试工具,目的测试60个用户同时打开课件时服务器性能

三.使用LoadRunner进行负载/压力测试

3.1录制基本的用户脚本

创建用户脚本需要用到VuGen。启动Visual User Generator 后,通过菜单新建一个用户脚本,选择系统通讯的协议。测试Web 应用,选择Web(HTTP/HTML)协议+SQL SERVER 协议,确定后,进入主窗体。通过菜单来启动录制脚本的命令。

在URL 中添入要测试的Web 站点地址..。

测试https://www.doczj.com/doc/3811245216.html,/lms-lmm/loginForm.do选择要把录制的脚本放到默认情况下的“Action”。

点“选项”按钮,进入录制的设置窗体。

然后点“OK”后,VuGen 开始录制脚本。录制过程中,在屏幕上会有一个工具条出现。录制的过程和WinRunner 有些类似。录制完成后,按下“结束录制”按钮退出录制过程。

3.2 完善测试脚本

当录制完一个基本的用户脚本后,在正式使用前需要完善测试脚本,增强脚本的灵活性。我们通过以下几种方法来完善测试脚本。插入事务、插入结合点、插入注解、参数化输入。

3.2.1 插入事务

事务(Transaction):为了衡量服务器的性能,我们需要定义事务。

插入事务操作可以在录制过程中进行,也可以在录制结束后进行。LoadRunner 运行在

脚本中插入不限数量的事务。

具体的操作方法如下:在需要定义事务的操作前面,通过菜单或者工具栏插入。输入该事务的名称。插入事务的开始点后,下面需要在需要定义事务的操作后面插入事务的“结束点”。同样可以通过菜单或者工具栏插入。默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下,我们也不需要修改,除非在手工编写代码时,有可能需要手动设置事务的状态。

3.2.2 插入集合点

插入集合点是为了衡量在加重负载的情况下服务器的性能情况。在测试计划中,可能会

要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据,从而达到测试计划中的需求。集合点只能插入到Action 部分,vuser_init 和vuser_end 中不能插入集合点。具体的操作方法如下:在需要插入集合点的前面,通过菜单或者工具栏操作输入该集合点的名称。

3.2.3 插入注释

在需要插入注释的前面,通过菜单或者工具栏操作

3.2.4 参数化输入

在录制脚本过程中,填写提交了一些数据。这些操作都被记录到了脚本中。当多个虚拟用户运行脚本时,都会提交相同的记录,这样不符合实际的运行情况,而且有可能引起冲突。为了更加真实的模拟实际环境,需要各种各样的输入。

参数化用户的登陆名:

通过脚本录制找到用户登陆部分,如图

框选住登陆名,点鼠标右键,弹出对话框,选择“替换为新参数”弹出对话框

在“属性”中有以下几

个选项:

Each Occurrence:在运行时,每遇到一次该参数,便会取一个新的值

Each iteration:运行时,在每一次循环中都取相同的值

Once:运行时,在每次循环中,该参数只取一次值

选择Each Occurrence

框选住登陆名,点鼠标右键,弹出对话框,选择“替换为新参数”弹出对话框,此时参数名输入:name,参数类型选择File,如图

点“属性”按钮,出现以下窗口

连接数据库,从数据表中选择用户名。点“数据向导”按钮,显示如图

使用第2 项,选择“使用手动指定SQL语句”点下一步,出现如图窗口

添入连接字符串,点“创建”按钮,选择事先配置好的ODBC连接。在SQL语句里输入select查询语句,出现如图窗口

按列名称取值

从哪一

行开始

取值

Controller 中设定20 个虚拟用户进行5 次循环,那么编号为1 的虚拟用户取前5 个数,编号为2 的虚拟用户取6-10 的数,依次类推,这样数据表中至少要有100 个数据,否则Controller 运行过程中会返回一个错误。

“按编号”指选择列表中的那一列数据,从左到右分别是1、2、3依次

取值Sequential完成设置关闭即可。

3.3 单机运行测试脚本

脚本就可以运行。运行脚本可以通过菜单或者工具栏来操作。

四.实施测试

4.1 选择脚本,创建虚拟用户

启用“controller”弹出如图窗口

根据需要修改虚拟用户数量,这里我们取“100”根据实现场景设计,取不同数字

点“编辑计划”细化方案,计划名里选择计划种类:加压,缓慢加压、默认计划或新建立计划。

同时加载所有vuser ,直到完成

加压:每15秒启动2个vuser 持续时间5分种 缓慢加压::每2分种启动2个vuser 持续时间10分种

点“加压”标签设置加压方法,点“持续时间”标签选择完成时间,点“加压”标签选择退出方法,点“方案开始时间”可以定义时间后自动到点执行,并在一个限定的时间范围内结束,所有设置完毕后,点“ok ”返回上一级窗口,点“开始方案”启动运行,出现如图窗口

单位秒内同时加载几个

vuser

打开可用图中目录树,选择系统资源找到windows 资源

4.2 添加windows资源监视窗口

选择系统资源,找到windows资源双击,则windows资源监视窗口便自动替换原窗口如上图。

4.3添加windows性能计数器

鼠标选择windows资源监视窗口,点击右键弹出菜单中选择“ADD Measurements..”弹出如图窗口

点“添加”把监视的服务器ip地址输入,点确定,如图

如果可以正常联机到服务器,则在资源度量中会显示全部计数器,此时如果点“确定”则系统默认全部选中,在监视窗口中会显示所有性能曲线,无法单独过滤显示某条曲线,如果选中某个计数器后点“添加”则弹出该项目下的其它性能指标,选择需要的计数器后点“添加”如图

4.4 执行脚本

点击“开始方案”

软件测试实验报告96812

实验一:软件测试方法 一:实验题目 采用白盒测试技术和黑盒测试技术对给出的案例进行测试 二:试验目的 本次实验的目的是采用软件测试中的白盒测试技术和黑盒测试技术对给出的案例进行测试用例设计。从而巩固所学的软件测试知识,对软件测试有更深层的理解。 三:实验设备 个人PC机(装有数据库和集成开发环境软件) 四:实验内容 1):为以下流程图所示的程序段设计一组测,分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖。并在各题下面写出测试用例、覆盖路径及结果等。 2):画出下列代码相应的程序流程图,并采用基本路径测试方法为以下程序段设计测试用例(需列出具体实验步骤)。 void Do (int X,int A,int B) { 1 if ( (A>1)&&(B==0) ) 2 X = X/A; 3 if ( (A==2)||(X>1) ) 4 X = X+1;

5 } 采用基本路经测试方法测试用例,并写出具体步骤 3):在某网站申请免费信箱时,要求用户必须输入用户名、密码及确认密码,对每一项输入条件的要求如下: 用户名:要求为4位以上,16位以下,使用英文字母、数字、“-”、“_”,并且首字符必须为字母或数字; 密码:要求为6~16位之间,只能使用英文字母、数字以及“-”、“_”,并且区分大小写。测试以上用例。 用所学的语言进行编码,然后进行等价类测试,当用户名和密码正确输入时提示注册成功;当错误输入时,显示不同的错误提示 通过分析测试用例以及最后得到的测试用例表分析所测程序的正确性,最后总结自己在这次试验中的收获并写出自己在这次试验中的心得体会。 五:实验步骤 1) (1)用语句覆盖方法进行测试 语句覆盖的基本思想是设计若干测试用例,运行被测程序,使程序中每个可执行语句至少被执行一次。由流程图可知该程序有四条不同的路径: P1:A-B-D P2:A-B-E P3:A-C-F P4:A-C-G 由于p1p2p4包含了所有可执行的语句,按照语句覆盖的测试用力设计原则,设计测试用例 无法检测出逻辑错误 (2)用判定覆盖方法进行测试 判定覆盖的基本思想是设计若干测试用例,运行被测程序,使得程序每个判断的取真和取假分支至少各执行一次,即判断条件真假均被满足。 条件覆盖测试用例 (3)用条件覆盖进行测试 条件覆盖的基本思想是设计若干测试用例,执行被测程序后要使每个判断中每个条件的可能取值至少满足一次。对于第一个判定条件A,可以分割如下: ?条件x>8:取真时为T1,取假时为F1;

软件测试实验报告材料58877

标准实用 本科实验报告 课程名称:软件测试技术 实验项目:软件测试技术试验实验地点:实验楼211 专业班级:软件工程学号: 学生:戴超 指导教师:兰方鹏 2015年10月7 日

理工大学学生实验报告 学院名称计算机与软件学院专业班级软件工程实验成绩学生戴超学号实验日期2015.10. 课程名称软件测试实验题目实验一白盒测试方法 一、实验目的和要求 (1)熟练掌握白盒测试方法中的逻辑覆盖和路径覆盖方法。 (2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。 (3)运用所学理论,完成实验研究的基本训练过程。 二、实验容和原理 测试以下程序段 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)} 三、主要仪器设备 四、操作方法与实验步骤 说明:程序段中每行开头的数字(1-10)是对每条语句的编号。

A 画出程序的控制流图(用题中给出的语句编号表示)。 B 分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。 C 编写完整的C 程序(含输入和输出),使用你所设计的测试用例运行上述程序段。完整填写相应的测试用例表(语句覆盖测试用例表、判定覆盖测试用例表、条件覆盖测试用例表、判定/条件覆盖测试用例表、条件组合覆盖测试用例表、路径覆盖测试用例表、基本路径测试用例表) 流程图为: 开始 开始 k=0,j=0 (x>0)&&(z<1) k=x*y-1 j=sqrt(k) (x==4)||(y>5) j=x*y+10 j=j%3 结束 1 2 5 7 8 9

软件测试实验报告

桂林航天工业学院 课程设计报告 课程名称:软件测试 专业:软件技术 学号:201102520xxx 姓名: 指导教师:

实验一黑盒测试 一.实验目的 (1)能熟练应用黑盒测试技术进行测试用例设计; (2)对测试用例进行优化设计; 二.实验内容 1.三角形问题的边界值分析测试用例 在三角形问题描述中,除了要求边长是整数外,没有给出其它的限制条件。在此,我们将三角形每边边长的取范围值设值为[1, 100] 。在三角形问题中,有四种可能的输出:等边三角形、等腰三角形、一般三角形和非三角形。利用这些信息能够确定下列输出(值域)等价类。 R1 = { : 边为a,b,c的等边三角形} R2 = { : 边为a,b,c的等腰三角形} R3 = { : 边为a,b,c的一般三角形} R4 = { : 边为a,b,c不能组成三角形} 2. 找零钱最佳组合 假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。假定此商店的货币面值只包括:50元(N50)、10元(N10)、5元(N5)、1元(N1) 四种。请结合等价类划分法和边界值分析法为上述程序设计出相应的测试用例。 三、程序代码

1.三角形问题程序。 #include int main(void){ int a,b,c;//定义三个整数a,b,c printf("请输入1到100的三个整数:"); scanf("%d%d%d",&a,&b,&c); if((a>=1&&a<=100)&&(b>=1&&b<=100)&&(b>=1&&b<=100))//判断取值范围 { if((a+b>c)&&(a+c>b)&&(b+c>a))//判断是否构成三角形 { if(a==b&&b==c) printf("等边三角形\n"); else if(a==b||a==c||b==c) printf("等腰三角形\n"); else printf("一般三角形\n"); } else printf("不能组成三角形\n"); } else

软件测试实验报告

《软件测试技术》 ——实验报告 题目 _____实验一_ __ 指导教师薛曼玲 _ 实验日期 _11.4 专业 学生姓名 _ __ ____ 班级/学号 ____ 成绩 ________ ___ ____ _

一、实验目的 1.能熟练应用黑盒测试技术进行测试用例设计; 2.能对测试用例进行优化设计; 二、实验内容 题目一:电话号码问题 1.某城市电话号码由三部分组成。它们的名称和内容分别是: (1)地区码:空白或3位数字; (2)前缀:非'0'或'1'的3位数字; (3)后缀:4 位数字。 假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。 1.根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 “一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个

程序要打印出信息, 说明这个三角形是三边不等的、是等腰的、还是等边的。” 题目三:日期问题 1.用决策表测试法测试以下程序:该程序有三个输入变量month、day、year (month 、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为2004 年11月29日,则该程序的输出为2004年12月1日。 (1) 分析各种输入情况,列出为输入变量month 、day 、year 划分的有效等价类。 (2) 分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。 (3) 根据(1) 和(2) ,画出简化后的决策表。 2.划分有效等价类 1)month变量有效等价类 M1:{month=4,6,9,11}M2:{month=1,3,5,7,8,10} M3:{month=12}M4:{month=2} 2)day变量的有效等价类 D1:{1<= day <= 26}D2:{day=27} D3:{day=28} D4:{day=29} D5:{day=30} D6:{day=31} 3)year变量有效等价类 Y1:{year是闰年} Y2:{year不是闰年} 3.列出所有动作桩

软件测试实验报告LoadRunner的使用

南昌大学软件学院 实验报告 实验名称 LoadRunner的使用 实验地点 实验日期 指导教师 学生班级 学生姓名 学生学号 提交日期 LoadRunner简介: LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。LoadRunner是目前应用最为广泛的性能测试工具之一。 一、实验目的

1. 熟练LoadRunner的工具组成和工具原理。 2. 熟练使用LoadRunner进行Web系统测试和压力负载测试。 3. 掌握LoadRunner测试流程。 二、实验设备 PC机:清华同方电脑 操作系统:windows 7 实用工具:WPS Office,LoadRunner8.0工具,IE9 三、实验内容 (1)、熟悉LoadRunner的工具组成和工具原理 1.LoadRunner工具组成 虚拟用户脚本生成器:捕获最终用户业务流程和创建自动性能测试脚本,即我们在以后说的产生测试脚本; 压力产生器:通过运行虚拟用户产生实际的负载; 用户代理:协调不同负载机上虚拟用户,产生步调一致的虚拟用户;压力调度:根据用户对场景的设置,设置不同脚本的虚拟用户数量;监视系统:监控主要的性能计数器; 压力结果分析工具:本身不能代替分析人员,但是可以辅助测试结果的分析。 2.LoadRunner工具原理 代理(Proxy)是客户端和服务器端之间的中介人,LoadRunner 就是通过代理方式截获客户端和服务器之间交互的数据流。 ①虚拟用户脚本生成器通过代理方式接收客户端发送的数据包,

黑盒测试软件测试实验报告2

软件测试与质量课程实验报告实验2:黑盒测试法实验

缺席:扣10分实验报告雷同:扣10分实验结果填写不完整:扣1 – 10分其他情况:扣分<=5分总扣分不能大于10分 参考代码如下: (1)程序参考答案: #include double main() { int hours; double payment,wage; wage=20; cout<<"please input hours:"; cin>>hours; if(hours>=0&&hours<=168){ if (hours<40) payment=hours*wage ; else if ((hours>=40) && (hours<=50)) payment=40*wage+(hours-40)*1.5*wage; else if (hours>50) payment=40*wage+10*1.5*wage+(hours-50)*3*wage; cout<<"The final payment are:"< void main() { int year; int month,maxmonth=12; int day,maxday; printf("请输入年份:(1000~3000)"); scanf("%d",&year); if(year<1000 || year>3000) { printf("输入错误!请从新输入!\n");

最新软件测试白盒测试实验报告

7.使用白盒测试用例设计方法为下面的程序设计测试用例: ·程序要求:10个铅球中有一个假球(比其他铅球的重量要轻),用天平三次称出假球。 ·程序设计思路:第一次使用天平分别称5个球,判断轻的一边有假球;拿出轻的5个球,拿出其中4个称,两边分别放2个球;如果两边同重,则剩下的球为假球;若两边不同重,拿出轻的两个球称第三次,轻的为假球。 【源程序】 using System; using System.Collections.Generic; using System.Linq; using System.Text; using NUnit.Framework; namespace Test3_7 { [TestFixture] public class TestGetMinValue { [Test] public void AddTwoNumbers() { Random r = new Random(); int n; int[] a=new int[10]; n = r.Next(0, 9); for (int i = 0; i < a.Length; i++) { if (i == n) a[i] = 5; else a[i] = 10; } GetMin gm = new GetMin(); Assert.AreEqual(n,gm.getMinvalue(a)); }

} public class GetMin { public int getMinvalue(int[] m) { double m1 = 0, m2 = 0, m3 = 0, m4 = 0; for (int i = 0; i < 5; i++) { m1 = m1 + m[i]; } for (int i = 5; i < 10; i++) { m2 = m2 + m[i]; } if (m1 < m2) { m3 = m[1] + m[0]; m4 = m[3] + m[4]; if (m3 > m4) { if (m[3] > m[4]) return 4; else return 3; } else if (m3 < m4) { if (m[0] > m[1]) return 1; else return 0; } else return 2; } else { m3 = m[5] + m[6]; m4 = m[8] + m[9]; if (m3 < m4) { if (m[5] > m[6]) return 6;

软件测试技术实验报告

《软件测试技术》 实验报告 河北工业大学计算机科学与软件学院 2017年9月

软件说明 电话号码问题 某城市电话号码由三部分组成。它们的名称和内容分别是:地区码:空白或三位数字; 前缀:非'0'或'1'的三位数字; 后缀:4位数字。 流程图 源代码 import java.awt.*; import java.awt.event.*; public class PhoneNumber extends Frame implements ActionListener{ /** * */ private static final long serialVersionUID = 1L;

private final String[] st = {"Name","Local","Prefix","Suffix"}; static int c_person=0; TextField t_name,t_local,t_prefix,t_suffix; RecordDialog d_record; MessageDialog d_message; person a[]=new person[100]; public PhoneNumber() { super("电话号码"); this.setSize(250,250); this.setLocation(300,240); Panel panel1 = new Panel(new GridLayout(4, 1)); for (int i = 0; i < st.length; i++) panel1.add(new Label(st[i],0)); Panel panel2 = new Panel(new GridLayout(4, 1)); t_name =new TextField("",20); t_local =new TextField(""); t_prefix=new TextField(""); t_suffix=new TextField(""); panel2.add(t_name); panel2.add(t_local); panel2.add(t_prefix); panel2.add(t_suffix); Panel panel3 = new Panel(new FlowLayout()); Button b_save = new Button("Save"); Button b_record= new Button("Record"); panel3.add(b_save); panel3.add(b_record); this.setLayout(new BorderLayout()); this.add("West", panel1); this.add("East", panel2); this.add("South", panel3); addWindowListener(new WindowCloser()); b_save.addActionListener(this); b_record.addActionListener(this); d_record=new RecordDialog(this); d_message=new MessageDialog(this); this.setVisible(true);

软件测试实验报告

本科实验报告 课程名称:软件测试技术 实验项目:软件测试技术试验实验地点:实验楼211 专业班级:软件工程学号: 学生姓名:戴超 指导教师:兰方鹏 2015年10月7 日

太原理工大学学生实验报告

一、实验目的和要求 (1)熟练掌握白盒测试方法中的逻辑覆盖和路径覆盖方法。 (2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。 (3)运用所学理论,完成实验研究的基本训练过程。 二、实验内容和原理 测试以下程序段 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)} 三、主要仪器设备

一、实验目的和要求 (1)熟练掌握黑盒测试方法中的等价类测试方法和边界值测试方法。 (2)通过实验掌握如何应用黑盒测试用例。 (3)运用所学理论,完成实验研究的基本训练过程。 二、实验内容和原理 (1)用你熟悉的语言编写一个判断三角形问题的程序。 要求:读入代表三角形边长的三个整数,判断它们能否组成三角形。如果能够,则输出三角形是等边、等腰或者一般三角形的识别信息;如果不能构成三角形,则输出相应提示信息。 (2)使用等价类方法和边界值方法设计测试用例。 三、主要仪器设备 四、操作方法与实验步骤 (1)先用等价类和边界值方法设计测试用例,然后用百合法进行检验和补充。 (2)判断三角形问题的程序流程图和程序流图如图1和图2所示。用你熟悉的语言编写源程序。 (3)使用等价类方法设计测试用例,并填写表2 和表3。

软件测试技术综合实验报告

沈阳理工大学职业技术学院 《软件测试技术》 综合实验报告 题目:对《图书出借管理系统》 _ 软件的测试用例设计 系别:信息工程系 专业:软件技术 班级学号: 学生姓名: 成绩: 指导教师: 2011年 1月 1日

目录 引言 (2) 1 系统分析 (3) 1.1 开发目的 (3) 1.2 需求分析 (3) 1.3 可行性分析 (4) 1.3.1 技术可行性分析 (4) 1.3.2 系统操作可行性分析 (4) 1.4 开发工具 (5) 1.4.1 SQL Server简介 (5) 1.4.2 Visual https://www.doczj.com/doc/3811245216.html, 2005 (5) 1.5 开发及运行环境 (6) 2 系统设计........................................................ V I 2.1 设计目标及系统总体功能结构................................ V I 2.2 系统功能模块设计......................................... V II 2.2.1 登陆模块............................................ V II 2.2.2 图书出借管理模块.................................... V II 2.3 系统流程图............................................... V II 3 数据库设计..................................................... V II 3.1 概念结构设计............................................ V III 3.2 数据库详细设计.......................................... V III 3.2.1 创建数据库......................................... V III 3.2.2 连接数据库........................................... I X 3.2.3 创建数据表........................................... I X 4 系统详细设计与实现............................................... X 4.1 主程序窗体设计............................................. X 4.2 系统登陆界面设计.......................................... X I 5 系统测试...................................................... X III 5.1 测试环境................................................ X III 5.2 测试用例设计与执行记录................................... X IV 5.2.1 登陆模块............................................ X IV 5.2.2 图书出借管理模块.................................... X IV 5.3 测试可行性分析............................................ X V 结论............................................................. X XII 体会............................................................ X XIII

软件测试技术实验报告

软件测试技术实验报告本页仅作为文档页封面,使用时可以删除 This document is for reference only-rar21year.March

《软件测试技术》 实验报告 河北工业大学计算机科学与软件学院 2017年9月

软件说明 电话号码问题 某城市电话号码由三部分组成。它们的名称和内容分别是:地区码:空白或三位数字; 前缀:非'0'或'1'的三位数字; 后缀:4位数字。 流程图 源代码 import .*; import class PhoneNumber extends Frame implements ActionListener{ /**

* */ private static final long serialVersionUID = 1L; private final String[] st = {"Name","Local","Prefix","Suffix"}; static int c_person=0; TextField t_name,t_local,t_prefix,t_suffix; RecordDialog d_record; MessageDialog d_message; person a[]=new person[100]; public PhoneNumber() { super("电话号码"); (250,250); (300,240); Panel panel1 = new Panel(new GridLayout(4, 1)); for (int i = 0; i < ; i++) (new Label(st[i],0)); Panel panel2 = new Panel(new GridLayout(4, 1)); t_name =new TextField("",20); t_local =new TextField(""); t_prefix=new TextField(""); t_suffix=new TextField(""); (t_name); (t_local); (t_prefix);

软件测试实验报告一

广东*融学院实验报告 课程名称:软件测试 」、实验目的及要求 1、理解测试用例的重要性。 2、熟练掌握等价类划分、边界值方法、决策表和因果图法设计测试用例。 二、实验环境及相关情况(包含使用软件、实验设备、主要仪器及材料等) 1. 使用软件:装有QTP功能测试软件 2 .实验设备:装有Windows的联网的个人计算机 三、实验内容及步骤(包含简要的实验步骤流程) 1、实验题目:登陆框测试 在各种输入条件下,测试程序的登录对话框功能。 用户名和密码的规格说明书如下:(密码规则同用户名规则。) 用户名长度为6至10位(含6位和10 位); 用户名由字符(a-z、A-Z)和数字(0-9)组成; 不能为空、空格和特殊字符。 要求:按照规格说明书,分别用等价类划分和边界值方法设计测试用例。 步骤:(1)分析规格说明书,确定输入条件、输出条件的有效等价类、无效等价类以及各个边界条件;(2)第二步:填表格并编号;(3)第三步:设计测试用例;(4)第四步:执行测试用例。 2、员工薪制冋题。 (1)年薪制员工:严重过失,扣年终风险金的4%,过失,扣年终风险金的2%。 (2)非年薪制员工:严重过失,扣月薪资的8%,过失,扣月薪资的4%。 步骤:(1)分析程序的规格说明,列出原因和结果;(2)找出原因与结果的因果关系、原因与原因之间的约束关系,画出因果图;(3)将因果图转化成决策表;(4)根据决策表,设计测试用例的输入数据和预期输出。

四、实验结果(包括程序或图表、结论陈述、数据记录及分析等,可附页) 等价类划分方法: 五、实验总结(包括心得体会、问题回答及实验改进意见,可附页) 通过本次实验,我理解了测试用例的重要性。熟练掌握了等价类划分、边界值方法、决策表和因果图法设计测试用例。 六、教师评语 1、完成所有规定的实验内容,实验步骤正确,结果正确; 2、完成绝大部分规定的实验内容,实验步骤正确,结果正确; 3、完成大部分规定的实验内容,实验步骤正确,结果正确; 4、基本完成规定的实验内容,实验步骤基本正确,所完成的结果基本正确; 5、未能很好地完成规定的实验内容或实验步骤不正确或结果不正确。 评定等级: 签名:

软件测试技术综合实验报告

软件测试技术综合实验报告 沈阳理工大学职业技术学院 《软件测试技术》 综合实验报告 题目: 对《图书出借管理系统》 _ 软件的测试用例设计 系别: 信息工程系专业: 软件技术班级学号: 学生姓名: 成绩: 指导教师: 2011年 1月 1日 目录 引言 .............................................................. 2 1 系统分析 (3) 1.1 开发目的 (3) 1.2 需求分析 (3) 1.3 可行性分析 (4) 1 技术可行性分析 ......................................... 4 1.3. 1.3.2 系统操作可行性分析 (4) 1.4 开发工具 (5) 1.4.1 SQL Server简介 (5) 1.4.2 Visual https://www.doczj.com/doc/3811245216.html, 2005 (5) 1.5 开发及运行环境 (6) 2 系统设计 ........................................................ VI 2.1 设计目标及系统总体功能结构 ................................ VI

2.2 系统功能模块设计 ......................................... VII 2.2.1 登陆模块 ............................................ VII 2.2.2 图书出借管理模块 .................................... VII 2.3 系统流程图 ............................................... VII 3 数据库设计 ..................................................... VII 3.1 概念结构设计 ............................................ VIII 3.2 数据库详细设计 .......................................... VIII 3.2.1 创建数据库 ......................................... VIII 3.2.2 连接数据库 ........................................... IX 3.2.3 创建数据表 ........................................... IX 4 系统详细设计与实现 ............................................... X 4.1 主程序窗体设计 ............................................. X 4.2 系统登陆界面设计 .......................................... XI 5 系统测试 ...................................................... XIII 5.1 测试环境 ................................................ XIII 5.2 测试用例设计与执行记录 ................................... XIV 5.2.1 登陆模块 ............................................ XIV 5.2.2 图书出借管理模块 .................................... XIV 5.3 测试可行性分析 ............................................ XV 结论 ............................................................. XXII 体会 ............................................................ XXIII I 引言

2020年软件测试实验报告(实用)

软件测试实验报告 实验一:软件测试方法 一:实验题目 采用白盒测试技术和黑盒测试技术对给出的案例进行测试二:试验目的 本次实验的目的是采用软件测试中的白盒测试技术和黑盒测试技术对给出的案例进行测试用例设计.从而巩固所学的软件测试知识,对软件测试有更深层的理解。 三:实验设备 个人PC机(装有数据库和集成开发环境软件) 四:实验内容 1):为以下流程图所示的程序段设计一组测,分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖。并在各题下面写出测试用例、覆盖路径及结果等。

2):画出下列代码相应的程序流程图,并采用基本路径测试方法为以下程序段设计测试用例(需列出具体实验步骤)。 void Do (int X, int A , int B) { 1 if ((A>1)&&(B==0) ) 2 X = X/A; 3 if ((A==2)||(X>1)) 4 X = X+1; 5 } 采用基本路经测试方法测试用例,并写出具体步骤 3):在某网站申请免费信箱时,要求用户必须输入用户名、密码及确认密码,对每一项输入条件的要求如下:用户名:要求为4位以上,16位以下,使用英文字母、数字、“—”、“_”,并且首字符必须为字母或数字;

密码:要求为6~16位之间,只能使用英文字母、数字以及“—”、“_”,并且区分大小写。 测试以上用例. 用所学的语言进行编码,然后进行等价类测试,当用户名和密码正确输入时提示注册成功;当错误输入时,显示不同的错误提示 通过分析测试用例以及最后得到的测试用例表分析所测程序的正确性,最后总结自己在这次试验中的收获并写出自己在这次试验中的心得体会。 五:实验步骤 1) (1)用语句覆盖方法进行测试 语句覆盖的基本思想是设计若干测试用例,运行被测程序,使程序中每个可执行语句至少被执行一次。由流程图可知该程序有四条不同的路径: P1:A-B—D P2:A-B-E P3:A-C-F P4:A-C-G 由于p1p2p4包含了所有可执行的语句,按照语句覆盖的测试用力设计原则,设计测试用例 语句覆盖测试用例

软件测试白盒测试实验报告

软件测试白盒测试实验报告 西南科技大学计算机学院 实验报告 实验名称白盒测试 实验地点东6E507 实验日期2015 年 4 月27 日 指导教师兰景英 学生班级软件1202 学生姓名尚晓明 学生学号20121237 提交日期2015 年 4 月27 日 三角形判定 (1) 题目内容描述 输入三条边,进行三角形的判定。(2) 测试用例的编写 测试用例参照三角形的组成规则编写。根据两边之和大于第三边的规则编写测试用 例,并且考虑输入值非法的情况(小于0 的数)。程序代码: #include using namespace std; void main() { int b; int c; int a;

cin >> a >> b >> c; if (a*b*c != 0 && (a + b > c&&b + c > a&&a + c > b)) { if (a == b&&b == c) { cout << "您输入的是等边三角形?"; } else if ((a + b > c&&a == b) || (b + c > a&&b == c) || (a + c > b&&a == c)) { cout << " 您输入的是等腰三角形?"; } else if ((a*a + b*b == c*c) || (b*b + c*c == a*a) || (a*a + c*c == b*b)) { cout << 您输入的是直角三角形?"; } else { cout << ”普通三角形” ; } } else{ cout << " 您输入的不能构成三角形"; }

有关软件测试的实验报告

哈尔滨华德学院 实验报告 课程名称:软件测试方法和技术 系别: 计算机应用技术系 专业:软件工程 学口 号: 姓名:陈天任 学期:2012年春季学期 实验成绩: 计算机应用技术系监制 实验名称:电话号码问题 实验时间:5.16学时:4实验地点:S103实验目的:根据程序的规格说明,作等价类划分,设计测试方案。

某城市电话号码由三部分组成。它们的名称和内容分别是: 地区码:空白或三位数字; 前缀:非'0'或'1'的三位数字; 后缀:4位数字。 测试方案。 测试代码: 假定被测程序能接受一切符合上述规定的电话号码, 拒绝所有不符 合规定的电话号码。 根据该程序的规格说明,作等价类的划分,并设计 实验步骤: imp ort p ublic class test1 { p ublic static Scanner inp ut= void main( Stri ng[] args) { new Sca nn er(System. in ); (2 )前 String str=inp ut .n extL in e(); str=str.trim(); System. out .println(str); System. out .println( "电话号码由三部分组成 ,1 )地区码:空白或三位数字; 缀:非'0'或'1'的三位数字;(3)后缀:4位数字。"); if (str.matches( "\\d{3}(-??| *)[2-9]{3}\\d{4}" "您输入的电话号码格式正确: System. out .println( )){ "+str); } else if (str.matches( System. out .println( "[2-9]{3}\\d{4}" )){ "您输入的电话号码格式正确: "+str); } else System. out .println( "您输入的电话号码格式有错误,

软件测试技术实验报告图书管理系统测试报告

软件测试技术实验报告图书管理系统 测试报告

图书管理系统测试报告 1简介 1.1编写目的 本测试报告描述了对图书管理系统的压力测试和对登录和注册功能的黑盒测试,根据测试结果指导开发人员对软件产品进行

完善和优化,给用户提供一份客观的软件质量报告。本方案的主要读者为软件开发项目管理者、软件工程师、系统维护工程师、测试工程师、客户代表等。 LoadRunner测试流程: 制定测试计划开发测试脚本创建测试场景分析测试结果监视性能指标运行场景测试1.2系统简介 项目名称:图书管理系统 项目简介:本项目探讨了一个基于J2EE的图书管理系统的设计和实现。基于J2EE下的图书管理系统用Java语言开发处理程序,选择强大的Eclipse作为开发工具,用交互式网站界面设计技术(JavaServer Faces)开发前台界面,后台数据库选择MySQL。本系统实现了基本的对书籍信息、读者信息、借阅信息、归还信息、查询信息进行管理和操作等功能,能够满足普通用户、管理员的需求。

1.3术语和缩略词参考资料 1)响应时间:客户端从给服务器发送一个请求开始直到完全接受了服务器反馈信息为止,这期间所用的时间称为响应时间。 2)吞吐率:即应用系统在单位时间内完成的交易量,也就是在单位时间内,应用系统针对不同的负载压力,所能完成的交易数量。 3)点击率:每秒钟用户向web服务器提交的http请求数。 4)图书管理系统项目开发计划,需求规格说明书,概要设计说明书,详细设计说明书。 5)黑盒测试:英文是Black Box Testing。又称功能测试或

者数据驱动测试。 6)等价划分测试:等价划分测试是根据等价类设计测试用例的一种技术。 2测试概要 2.1测试用例设计 2.1.1黑盒测试: 1)边界值法 用边界值法设计用户注册测试用例: a)先等价划分 b)边界值分析

软件测试实验报告2

软件测试实验报告 题目名称:计算下一天时间测试 专业班级:软件三班 学号: 041140338 姓名:王超

一、实验综述 1、实验目的及要求 实验目的: 掌握等价类测试方法的原理及使用。 实验要求: (1)完成各个程序的编写 (2)按要求设计测试用例,并运行测试用例检查程序的正确与否 实验内容: 对日期操作函数进行等价类测试方法的测试用例设计及测试结果记录与分析。 2、实验仪器、设备或软件 1. 个人计算机PC; 2. VisualC++/.NET编程环境。 二、实验过程(实验步骤、记录、数据、分析) 1.程序有三个变量(月份、日期、和年)的函数,函数返回输入日期后面的那个日期。变量都具有整数值,且满足以下条件: C1 1<=月份<=12 C2 1<=日期<=31 确定等价类 M1={月份:每月有30天} M2={月份:每月有31天} M3={月份:此月是2月} D1={日期:1<=日期<=28} D2={日期:日期=29} D3={日期:日期=30} D4={日期:日期=31} Y1={年:年是闰年} Y2={年:年是平年} 一般等价类测试用例应该有 3个(月份类)x 4个(日期类)x 2(年类)= 24个

24 25 26 2 2 2 27 28 30 2001 2001 2001 2001.2.28 2001.3.1 Day超出 2001.2.27 2001.2.28 Error input 通过分析前两个测试用例表,就会发现这些测试用例是不充分的,而且存在冗余。测试用例: 1.对日期进行测试 1)输入-1日,年月正常输入。 2)输入1日,年月正常输入。 3)输入15日,年月正常输入。 4)输入30日,年月正常输入。 5)输入30日,年月正常输入。 6)输入31日,年月正常输入。

相关主题
文本预览
相关文档 最新文档