文档库 最新最全的文档下载
当前位置:文档库 › QTP实验指导1

QTP实验指导1

QTP实验指导1
QTP实验指导1

天津工业大学实验指导书

时间:年月日

课程名称:软件测试技术

实验名称:熟悉自动化测试工具QTP的使用

班级:姓名:学号:

指导教师评定:签名:

1实验目的

(1)理解和掌握自动化测试的基本原理和方法。

(2)掌握QTP录制及回放测试脚本的方法。

2实验要求

(1)使用QTP对被测程序进行脚本录制和回放,掌握录制及回放的操作步骤。

(2)掌握对测试脚本中相关测试数据的参数化方法。

3实验内容

本次实验主要包括两个内容:

(1)录制机票预订登陆窗口login的登陆脚本并回放脚本验证录制的正确性。

(2)对脚本中的agent name和password参数化,并输入5组的数据。

(3)获取agent name不合法时的提示窗口信息,并将该信息写入测试报告。

(4)获取password不合法时的提示窗口信息,并将该信息写入测试报告。

4实验步骤

当使用应用程序时,QTP会记录你的操作步骤,并产生测试脚本。当停止录制后,会看到QTP在Keyword View中以表格的方式显示测试脚本的操作步骤;回放脚本时,QTP能自动执行之前的人工操作。

4.1 录制测试脚本

1.执行QuickTest并开启一个全新的测试脚本

?开启QuickTest,在“Add-in Manager”窗口中选择“visual basic”选项,点击“OK”关闭

“Add-in Manager”窗口,进入QuickTest Professional 主窗口。

?如果QuickTest Professional 已经启动,检查“Help>About QuickTest Professional”查看目

前加载了那些add-ins。如果没有加载“visual basic”,那么必须关闭并重新启动QuickTest

Professional,然后在“Add-in Manager”窗口中选择“Web”。

?如果在执行QuickTest Professional时没有开启“Add-in Manager”则点击“Tool>Options”,

在“General”标签页勾选“Display Add-in Manager on Startup”,在下次执行QuickTest

Professional 时就会看到“Add-in Manager”窗口了

2.开始录制测试脚本

选中“Test>Record”或者点选工具栏上的“Record”按钮。打开“Record and Run Settings”对话窗口:

在“Windows Applications”标签页选择“Record and run only on”,如下图所示:

如果选择“Record and run test on any open Windows-based application”单选按钮,则在录制过程中,QuickTest会记录你对所有

..的Windows程序所做的操作。

如果选择“Record and run on these application(opened when a session begins)”单选按钮,则在录制过程中,QuickTest只会记录对那些添加到下面“Application details”列表框中的应用程序的操作(你可以通过“+”、“Edit”、“×”按钮来编辑这个列表)。

我们选择“+”按钮来增加下面进行录制的应用程序,如下图所示:

在Application输入框中输入待录制应用程序的完整路径,也可以通过旁边“…”按钮来定位应用程序。Working folder和Program arguments默认为应用程序的目录。

Launch application单选框表示开始录制和回放的时候是否需要自动运行被测程序。设置好以上各项

以后,按“OK”按钮保存。

3.登录机票预订登陆窗口login,开始录制

(1)单击“Record”按钮后,login程序启动;

(2)在agent name和password中分别输入training和mercury。(只要agentname大于或等于4个字符,密码是“mercury”,即可登陆成功)

(3)点击“OK”按钮后,订票窗口将打开。点击关闭按钮。

(4)单击“Stop”按钮,结束录制。

4.在“keyword view”和“expert view”两种下查看录制脚本keyword view视图:

expert view视图:

(1)选择“Automation”中的“run”,对以上脚本进行回放,并观察执行情况。

step execution by”。

6.在keyword视图中将密文改成明文

(1)在Keyword View中,选择“password”行,将“operation”值由“SetSecure”改成“Set”。(2)单击“password”中的“Value”,打开“value onfiguration …”,选择“constant”,输入“mercury”。

7.应用If语句,对脚本修改如下:

Dialog("Login").WinEdit("Agent Name:").Set "training"

Dialog("Login").WinEdit("Password:").Set “mercury"

Dialog("Login").WinButton("OK").Click

If Window(“FlightReservation”).Exist Then

Reporter.ReportEvent micPass,”登录验证”,”登录成功”

Window("Flight Reservation").Close

Else

Reporter.ReportEvent micFail,”登录验证”,”登录失败”

End If

8.重新回放脚本,查看测试报告。

9.对agent name和password参数化。

(1)在“keyword view”视图中,选择“action1”点击鼠标右键,选择“Expand Sub Tree”命令。

(2)选择“Agent Name”对应的“value”值,打开“Value Configuration Options”对话框。选择“parameter”,在“name”中输入“username”

(3)选择“password”对应的“value”值,打开“V alue Configuration Options”对话框。选择“parameter”,在“name”中输入“password”

10.查看datatable表格,输入数据如下:

11.为了保证数据的运行,需要手动添加一行脚本:

SystemUtil.Run"C:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe","",

"C:\Program Files\HP\QuickTest Professional\samples\flight\app","open“

脚本的语法检查,”F7”

12. 修改脚本后重新运行。

13.捕捉agent name不合法的提示信息。

(1)在login窗口中的用户名中输入“tyq”

(2)选择“Object Repository”菜单,

(3)单击“add objects to local”按钮

(4)选择提示的对话框

(5)选择“All object types”;

(6)修改脚本如下:

SystemUtil.Run "C:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe","","C:\Program Files\HP\QuickTest Professional\samples\flight\app\","open"

Dialog("Login").WinEdit("Agent Name:").Set DataTable("username", dtLocalSheet)

Dialog("Login").WinEdit("Password:").Set DataTable("password", dtLocalSheet)

Dialog("Login").WinButton("OK").Click

wait(5)

If Window("Flight Reservation").Exist(3) Then

Reporter.ReportEvent micPass,"登录验证","登录成功"

Window("Flight Reservation").Close

Else

if Dialog("Login").Dialog("Flight Reservation").Exist(3) then

Dim err_message

err_message = Dialog("Login"). Dialog("Flight Reservation").Static("Agent name must be at")

GetROProperty("text")

Reporter.ReportEvent micFail,"登录失败","错误信息是"&err_message

wait(5)

Dialog("Flight Reservation").WinButton("确定").Click

wait(2)

Dialog("Login").WinButton("Cancel").Click

End if

End If

14.如何捕捉password不合法的提示信息,请参考以上步骤自己完成。

软件测试实验报告

《软件测试技术》 ——实验报告 题目 _____实验一_ __ 指导教师薛曼玲 _ 实验日期 _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.列出所有动作桩

上机实验8 二维数组&字符数组--参考答案

上机实验八二维数组与字符数组—参考答案 一.目的要求 1.掌握二维数组的基本概念,如何定义二维数组,如何初始化二维数组。 2.掌握二维数组的基本操作:引用数组元素、行(列)求和,行(列)最大最小值,整个数组的输入输出等。 3.掌握与二维数组有关的算法,如找最大最小值(或位置)、矩阵转置等。 4.掌握字符串与字符数组的基本应用方法 5.掌握字符串有关的算法,如字符转换、查询、统计和进制转换等 二.实验内容 【实验题1】程序填空:输入一个4×4矩阵,求出主对角线上的元素之和sum1、副对角线上的元素之和sum2,并输出结果。 提示:每一行只有一个主对角线元素a[i][i](特征:i==j),也仅有一个副对角线元素a[i][n-i-1](特征:i+j==n-1,即j=n-1-i) 源程序: #include void main() { int i,j,sum1=0,sum2=0, a[4][4]; printf("Input a 4*4 matrix:\n"); for(i=0; i<4; i++) //输入矩阵元素 for( j=0; j<4; j++) scanf("%d", &a[i][j]); for(i=0; i<4; i++ ){ //计算sum1和sum2 sum1 +=a[i][i]; sum2 +=a[i][3-i]; } printf("sum1=%d, sum2=%d\n", sum1,sum2); //输出结果 } 运行程序,并输入数据: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 运行结果:sum1= 34, sum2= 34 【实验题2】程序填空:打印杨辉三角形前10行: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 …………………… 算法提示:分析一个10行的杨辉三角,需要一个10×10的二维矩阵a,则: 1)杨辉三角为下三角矩阵,只需要求出第i行(i=0,1,2,…,9)前i+1个元素,即a[i][j]!=0 (j=0…i). 2)每行的第0列元素均为1,即a[i][0]=1; 3)每行的主对角线元素也均为1,即a[i][i]=1; 4)从第2行开始,每行夹在第0列元素与主对角线元素之间的元素a[i][j]( i=2,3,…,9, j=1,..,i-1 ) 等于其左上方元素a[i-1][j-1]与正上方元素a[i-1][j]之和,即a[i][j]=a[i-1][j-1]+a[i-1][j]; 5)输出该矩阵的下三角,即得出杨辉三角的前10行。

大学生C语言程序设计(第四版 谭洪强)实验8答案

实验八 函 数(二) 参考答案 /*1.(sy8-1.c ) 请编写函数 fun ,其功能是:计算并输出给定数组(长度为 9)中每相邻两个元素之平均值的平方根之和。 例如,给定数组中的 9 个元素依次为 12.0、34.0、4.0、23.0、34.0、45.0、18.0、3.0、11.0,输出应为:s=35.951014。 【解题思路】 在给出的参考程序中,由于函数要求的返回值为双精度型,所以先将变量 avg 、sum 定义为双精度型,初值为 0.0,然后通过 for 循环分别求出相邻两个元素的平均值放入变量 avg 中,再使用求平方根函数sqrt()对各平均值开方求和,最终结果输出到变量 sum 中并返回。 【参考答案】*/ double fun(double x[9]) { int i ; double avg=0.0,sum=0.0; //将变量avg 、sum 定义为双精度型,并给其赋初值为0.0 for (i=0;i< 8;i++) { avg=(x[i]+x[i+1])/2; //通过for 循环分别求出相邻两个元素的平均值放入变量avg 中 sum+=sqrt(avg); //使用求平方根函数sqrt()对各平均值开方求和,最终结果输出到变量 sum } return sum; /*返回计算结果*/ } 2.(sy8-2.c ) 编写函数fun ,实现矩阵(3行3列)的转置(即行列互换)。例如,输入下 面的矩阵:????? ??900800700600500 400300200 100,程序输出: ???? ? ??900600300800500200700400100。 【解题思路】 方阵转置,只需要将左下半三角元素和右上半三角元素对换即可。 【参考答案】 int fun(int array[3][3]) { int i,j,t ; for(i = 0 ; i < 3 ; i++) for(j = 0 ; j < i ; j++) {t=array[i][j]; array[i][j]=arrar[j][i]; array[j][i]=t ; } } 3.(sy8-3.c ) 请编写函数 fun ,函数的功能是:统计一行字符串中单词的个数作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。 【解题思路】I am a student! 在给出的参考程序中,若判断出当前字符为非空格,而它前面的字符是空格,则单词数累加 1;若当前字符为非空格,而其前面的字符也为非空格,则单词数不累加 1,程序细节可以参考程序的注释部分。 【参考答案1】 int fun( char s[])

软件测试实验报告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 就是通过代理方式截获客户端和服务器之间交互的数据流。 ①虚拟用户脚本生成器通过代理方式接收客户端发送的数据包,

八年级生物实验探究及答案

八年级生物实验探究及答 案 Prepared on 21 November 2021

生物实验探究 班级:姓名: 1.仔细观察蝗虫的胸部和腹部。可以在左右两侧找到排列很整齐的一行小孔,这就是气门。气门与蝗虫体内的气管连通着,气门是气体进入蝗虫身体的门户,依据给的实验材料,设计一个实验,证明气门是蝗虫气体进入的门户。提出问题: 做出假设:。 材料用具:(1)两只活蝗虫;(2)两只试管;(3)清水;(4)玻璃条;(5)细线。实验步骤:(1) (2) ; (3) 实验预期结果: 实验结论:。 讨论:选择两只大小、生活状况相同的蝗虫,目的是 2.设计探究实验 背景知识:蚯蚓生活在潮湿、疏松、富含有机物的土壤中。它的身体由许多体节构成,体表湿润并且有许多粗糙的刚毛。蚯蚓依靠肌肉和刚毛运动。 请你设计一个实验来探究: 蚯蚓在什么样的物体表面爬得快 (1)我提出的问题是: (2)我的假设是: (3)实验方案设计:将个体粗壮的活蚯蚓放在粗糙纸上,观察它的运动;将个体粗壮的活蚯蚓放在玻璃板上,观察它的运动;重复上述实验3-5次。 (4)预测结果:。 (5)得出结论:。 3.某同学想探究土壤湿度对蚯蚓生活的影响,未完成,请你接着做它。 (1)你认为他可在的环境中才能找到试验用的蚯蚓。 (2)按照科学实验的要求,他必须设计对照,才更具有说服力。 在这个实验中是变量,要控制好。 (3)你作出的假设是:。 (4)请你设计一个实验来探究土壤湿度对蚯蚓的影响:(只写出具体操作步骤即可) 。

(5)实施计划。 4.菜青虫是生活在十字花科蔬菜菜叶上的一种深绿色的小肉虫,它是菜粉蝶的幼虫。 十字花科植物的花一般由四片花瓣组成,并且这四片花瓣呈十字形排列,大白菜、卷心菜、油菜等都属于十字花科的蔬菜。 (1)提出问题:; (2)作出假设:; (3)设计实验,完成实验 ◆培养菜青虫:寻找菜青虫卵,找到后将卵隔离饲养 ◆制取汁液: ◆用汁液涂滤纸: ◆观察现象: (4)检验假设,得出结论。 (5)讨论和完善计划 ◆从卵开始进行隔离饲养的目的:。 ◆对菜青虫卵隔离饲养的方法:人工条件下饲养菜青虫,隔离卵并不困难。但要饲养成活,还是有些难度的。 首先,要尽可能为菜青虫创造一个接近自然生存环境的饲养条件,目 的:。其次,饲养的数量也不宜过少,目 的:。 ◆可以选择含特殊挥发性油的植物叶片,如薄荷叶、芹菜叶等。看看菜青虫是否喜欢。叶片最好不要带毛或刺 等,。 ◆实验用的叶片和滤纸等应当一样大:这样做的目的也 是。 ◆滤纸的颜色要和菜叶的一样。选择一样的色彩也是为了。 ◆最好是事先饿饲一段时间,在菜青虫有较高食欲时做这项探究。可以将滤纸和菜叶放在同一水平线上,使菜青虫离滤纸和菜叶同样距离(距离不要太远)。放开菜青虫,看看它会取食什么东西。 ◆对照实验要在同样的时间和地点来做:这 样。 5.一个群体中的动物个体向其他个体发出某种信息,接受信息的个体产生某种行为反应,这种现象叫做通讯。 (1)提出问题: (2)作出假设: (3)设计实验,完成实验。 在设计实验时,在离蚁穴较远的地方放的一些食物中,应既有肉食又有植食。因为蚂蚁的种类很多,食性也不尽相同,有的为肉食性,有的为植食性,有的则为杂食性。在饲养蚂蚁时也需注意它的食性,蚂蚁生长繁殖的适宜温度

实验8部分答案

SQL数据查询语句: 1: (选择表中的若干列) 求全体学生的学号、姓名、性别和年龄。 2: (不选择重复行) 求选修了课程的学生学号。 3: (选择表中的所有列) 求全体学生的详细信息。 4: (使用表达式) 求全体学生的学号、姓名和出生年份。 5: (使用列的别名) 求学生的学号和出生年份,显示时使用别名“学号”和“出生年份”。 6: (比较大小条件) 求年龄大于19岁的学生的姓名和年龄。 7: (比较大小条件) 求注册B1班或注册B2班年龄大于18岁的学生的姓名、班级号和年龄。 8: (确定范围条件) 求年龄在19岁与22岁(含20岁和22岁)之间的学生的学号和年龄。 9: (确定范围条件) 求年龄不在19岁与22岁之间的学生的学号和年龄。 10:(确定集合条件) 求在下列各班的学生信息:注册B1班、注册B2班。 11:(确定集合条件) 求不是注册B1班、注册B2班的学生信息。 12:(匹配查询) 求姓名是以“李”打头的学生。 13:(匹配查询) 求姓名中含有“志”的学生。

14:(匹配查询) 求姓名长度至少是三个汉字且倒数第三个汉字必须是“马”的学生。 15:(匹配查询) 求选修课程JC001或JC003,成绩在80至90之间,学号为2007xxx的学生的学号、课程号和成绩。 16:(涉及空值查询) 求缺少学习成绩的学生的学号和课程号。 17:(控制行的显示顺序) 求选修JC003课程或JC004课程的学生 的学号、课程号和分数。 18:(组函数) 求学生总人数。 19:(组函数) 求选修了课程的学生人数。 20:(组函数) 求注册B1班学生的平均年龄。 21:(组函数) 求选修了课程JC001的最高、最低与平均成绩以及 课程的名称。 22:(分组查询) 求各门课程的平均成绩与总成绩。 23:(分组查询) 求各班级的人数和平均年龄。 24:(分组查询) 输入以下查询语句并执行,观察出现的其结果并 分析其原因。 SELECT SNAME,SDEPT,COUNT(*)FROM STUDENT WHERE SDEPT=’CS’GROUP BY SDEPT; 25:(分组查询) 分析以下语句为什么会出现错误。并给出正确的 查询语句。

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

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;

实验八溶液表面张力测定问答题答案(学习资料)

实验八溶液表面张力测定问答题答案 1、实验时,为什么毛细管口应处于刚好接触溶液表面的位置? 如插入一定深度将对实验带来什么影响? 答案:减少测量?P max 误差,因为?P max 是气泡内外的压力差,在气泡形成的过程中,由于表面张力的作用,凹液面产生一个指向液面外的附加压力△P , K =ΔP r γ=ΔP 2 m ax m ax ,如果插入一定深度,P 外还要考虑插入这段深度的静压力,使得?P max 的绝对值变大,表面张力也变大。 2、最大气泡法测定表面张力时为什么要读最大压力差? 答案:最大气泡法测定表面张力时要读最大压力差。因为随着气泡的形成,曲率半径逐渐由大变小又变大,当曲率半径等于毛细管半径时,气泡呈半球形,气泡曲率半径最小,△P 最大。 这时的表面张力为: K =ΔP r γ=ΔP 2 m ax m ax 式中的K 为仪器常数,可用已知表面张力的标准物质测得。 ?P max 由压力计读出。 3、实验中为什么要测定水的?P m ax ? 答案:当曲率半径等于毛细管半径时的表面张力为: K =ΔP r γ=ΔP 2 m ax m ax 式中的K 为仪器常数,可用已知表面张力的标准物质测得,这种标准物质就是水。 4、对测量所用毛细管有什么要求? 答案:毛细管一定要清洗干净,管口平齐。 5、在毛细管口所形成的气泡什么时候其半径最小? 答案:测量时?P m ax 最大 6、如何用镜象法从σ—C 等温线上作不同浓度的切线求T c γ??? ????或Z ? 如图所示,经过切点a 作平行于横坐标的直线,交纵坐标

于b 点。用镜象法求作切线。 以Z 表示切线和平行线在纵坐标上截距间的距离,显然Z 的长度等于 T c c γ??? ????, 即 T Z c c γ???=- ???? 7、答案:表面张力为什么必须在恒温槽中进行测定? 答案:因为表面张力与温度有关,温度升高,表面张力下降。 8、如果气泡逸出的很快,或几个气泡一齐出,对实验结果有何影响? 答案:如果气泡逸出的很快,或几个气泡一齐出,即气泡形成时间太短,则吸附平衡就来不及在气泡表面建立起来,测得的表面张力也不能反映该浓度之真正的表面张力值。 9、根据什么来控制滴液漏斗的放液速度?对本实验有何影响? 答案:要求气泡从毛细管缓慢逸出,通过控制滴液漏斗的放液速度调节逸出气泡每分钟10个左右。若形成时间太短,则吸附平衡就来不及在气泡表面建立起来,测得的表面张力也不能反映该浓度之真正的表面张力值。 10、测定正丁醇溶液的表面张力时,浓度为什么要按低到高的顺序依次测定? 答案:溶液的表面张力与浓度有关,浓度按低到高的顺序依次测定,可减少由测量瓶清洗不够干净引起的误差。 11、温度变化对表面张力有何影响,为什么? 答案:温度升高,表面张力下降。表面张力与温度有关, 12、测定时如何读取微压力计的压差? 答案:测量时读取微压计上的最大压力。 13、对同一试样进行测定时,每次脱出气泡一个或连串两个所读结果是否相同,为什么? 答案:不同;每次脱出一个气泡结果才准确。如果气泡逸出的很快,或几个气泡一齐出,即气泡形成时间太短,则吸附平衡就来不及在气泡表面建立起来,测得的表面张力也不能反映该浓度之真正的表面张力值。

软件测试实验报告

本科实验报告 课程名称:软件测试技术 实验项目:软件测试技术试验实验地点:实验楼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。

软件测试实验报告一

广东*融学院实验报告 课程名称:软件测试 」、实验目的及要求 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、未能很好地完成规定的实验内容或实验步骤不正确或结果不正确。 评定等级: 签名:

软件测试实验报告

实验一:软件测试方法 一:实验题目 采用白盒测试技术和黑盒测试技术对给出的案例进行测试 二:试验目的 本次实验的目的是采用软件测试中的白盒测试技术和黑盒测试技术对给出的案例进行测试用例设计。从而巩固所学的软件测试知识,对软件测试有更深层的理解。 三:实验设备 个人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包含了所有可执行的语句,按照语句覆盖的测试用力设计原则,设计测试用例 测试用例具体取之条件通过路径 X=17,y=17x>8,y>5,x>16,y>10P4(A-C-G) X=6,y=4X<=8,y<=5,x>0,y>0P1(A-B-D) X=-5,y=-3X<=8,y<=5,x<=0,y<=0P2(A-B-E)无法检测出逻辑错误 (2)用判定覆盖方法进行测试 判定覆盖的基本思想是设计若干测试用例,运行被测程序,使得程序每个判断的取真和取假分支至少各执行一次,即判断条件真假均被满足。 条件覆盖测试用例 测试用例具体取之条件判定条件通过路径 X=17,y=17x>8,y>5,x>16,y>10A=T,C=T P4(A-C-G) X=6,y=4X<=8,y<=5,x>0,y>0A=F,B=F P1(A-B-D) X=-5,y=-3X<=8,y<=5,x<=0,y<=0A=F,B=T P2(A-B-E) X=10,y=6x>8,y>5,x<16,x<10A=T,C=F P3(A-C-F) (3)用条件覆盖进行测试 条件覆盖的基本思想是设计若干测试用例,执行被测程序后要使每个判断中每个条件的可能取值至少满足一次。对于第一个判定条件A,可以分割如下: 条件x>8:取真时为T1,取假时为F1; 条件y>5: 取真时为T2,取假时为F2; 对于第二个判定条件B,可分割如下: 条件x>0:取真时为T3,取假时为F3; 条件y>0:取真时为T4,取假时为F4; 对与第三个判定条件C,可分割如下: 条件x>16:取真时为T5,取假时为F5; 条件y>10:取真时为T6,取假时为F6; 根据条件覆盖测试思想,组成测试用例如图:

实验八数组应用一答案

实验八数组应用(一)答案 一、实验目的 1. 掌握一维数组的定义和使用; 2. 了解二维数组的定义和使用。 二、实验学时数 2学时 三、实验步骤 (一)阅读程序 1.#include main() { int a[]={1,2,3,4,5},i,j,s=0; j = 1; for ( i = 4 ; i>=0 ; i--) { s = s+ a[i] * j ; j = j * 10 ; } printf(" s= %d \n" , s ); 2. #include main() { int k ; int a[3][3] = {9,8,7,6,5,4,3,2,1} ; for (k =0;k < 3;k++ ) printf("%d \n",a[k][2-k]); }

3. main() { int i , j ,x =0 ,y = 0 , m ; int a[3][3] = { 1, -2 , 0 , 4 , -5 , 6 , 2 , 4 }; m = a [0][0] ; for (i=0 ;i < 3 ;i++) for (j = 0 ; j<3 ; j++ ) if ( a[ i] [ j ] >m ) { m = a[ i ][ j ] ; x = i ; y = j ; } printf(“ ( % d , % d ) = % d \n“ , x , y,m ); (二)完成程序 要求:依据题目要求,分析已给出的语句,填写空白。但是不要增行或删行,改动程序的结构。 1.下面程序的功能是将十进制整数转换成二进制,请在_______上填写正确内容。 #include main() { int k=0,n,j,num[16]={0}; printf("输入要转换的十进制数\n"); scanf("%d",&n); printf ("%d转换为二进制数:\n",n); do { num[k]=_n%2_; n=n/2;k++; } while(n!=0); for(k=15;k>=0;k--) printf("%d",num[k]);

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

图书管理系统测试报告 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)先等价划分

实验八 函数含答案

实验八函数 【目的与要求】 1.掌握C语言函数的定义方法、函数的声明及函数的调用方法。 2.了解主调函数和被调函数之间的参数传递方式。 【上机内容】 【一般示例】 【例1】将打印18个"*"组成星形线定义为一个返回值和形参列表都为空的函数,通过主函数调用它。 #include void Star(void) //画星形线。函数没有返回值,形参列表也为空 { int i; for(i=1;i<=18;i++) printf("*"); //18个"*"组成星形线 printf("\n"); return ; //返回值类型为void,return后不带表达式,此句可省略 } int main() { Star( ); //单独的函数调用语句,实参表为空,但必须保留括号 printf("I love C language!\n"); Star( ); return 0; } 【例2】调用prime 函数以每行5个素数的格式输出100到200之间的所有素数。

#include #include int prime(int m) //判断素数函数定义 { int i,k,f=1 ; //函数内定义3个变量 if (m==1) //形参若为1 f=0 ; //形参若为1,非素数 k=(int)sqrt(m); for (i=2; i<=k;i++) if (m%i==0) //m被某除数整除 f=0 ; //则不是素数 return f ; //用return语句返回 } //函数体结束 int main( ) { int i,count=0; for (i=101;i<200;i=i+2) //用i作为循环控制变量,从101开始,步长为2 if (prime(i)) //对每一个i,调用prime函数判断它是否为素数 { printf("%5d",i); //如果是素数,输出该素数i count++ ; //素数个数加1 if (count%5==0 ) //每输出5个素数换一行 printf("\n"); }

实验8_参考答案

实验8指针与引用(2) 请将自己报告部分,文字和程序代码,加粗 完成下面实验内容和实验要求。 自测题 1.编写函数实现字符串函数strcmp()的功能。 要求:使用指针操作完成题目 ⑴程序代码如下,请补充完整,使程序能运行且运行正确。 #include #include using namespace std; int My_strcmp(char *str1, char *str2) //声明两个字符指针变量str1和str2 { while (*str1==*str2&&*str1!='\0'&&*str2!='\0') // 当对应字符相等且两个字符串未结束时循环,注意*str1和*str2之间是“==”不是“=”,并且两个字符串都要判断是否结束循环{ str1++; str2++;// 将str2指针指向下一个字符 } return (*str1-*str2); /*返回字符串比较结果,根据主函数中r的分支判断确定应该返回的结果*/不要写成str1-str2,这样变成指针值相减,没有意义,另外写成*str1>*str2?1:-1也是可以的 } int main() { char s1[50], s2[50]; cout << "please input the first string : "; cin >> s1; cout << "please input the second string : "; cin >> s2; int r; r = My_strcmp(s1, s2); // 函数调用返回值赋值给r if (r>0) cout << s1 << " is larger!" << endl; else if (r<0)

Web前端开发技术课后习题答案储久良第8章练习与实验答案

第 8章练习与实验答案 练习 8 1.选择题 (1)D (2)B (3) D (4) A (5) C 2. 填空题 (1)text-indent (2)text-align:center; (3)background-repeat:repeat-x; (4)background-position (5) red 或 RGB(100%,0,0) 、rgb(255,0,0) 、 #FF0000、 #F00 (6)边框为 2 像素、双实线、红色。 3.问答题 见教材。 实验 8 1.代码 CSS+DIV

木兰花令 . 拟古决绝词
纳兰性德
人生若只如初见,

《C语言程序设计》(江宝钏著)实验八答案

江宝钏实验八 3.一般编程题 1.用指针法统计10个数中正数、负数与零的个数,并分别求正数的总与,负数的总与。#include void main() { int a[10]; int i,*p,sum1,sum2,c1,c2,c3; printf("输入10个整数:"); for(i=0;i<10;i++) scanf("%d",&a[i]); c1=c2=c3=0;sum1=sum2=0; for(p=a;p<(a+10);p++) { if(*p<0){ sum1+=*p;c1++;} if(*p==0){ c2++;} if(*p>0) {sum2+=*p;c3++;} } printf("正数,负数的与:%d %d\n",sum2,sum1); printf("正数、零、负数的个数:%d %d %d \n",c3,c2,c1); }

4.较难编程题 1.输入一行字符,开始用一个指针指向这行字符的开头,并依次向后移,分别统计出其中英 文字母、空格、数字与其它字符的个数。 #include #include #define N 100 void main() { char *p; char str[N]; int c1,c2,c3,c4,i; printf("input a string:"); gets(str); i=strlen(str); c1=c2=c3=c4=0; for(p=str;p='a'&&*p<='z'||*p>='A'&&*p<='Z') c1++;

(完整版)实验08-1参考答案

实验八指针程序设计 班级:学号:姓名:评分: 一.【实验目的】 1、理解指针、地址和数组间的关系。 2、掌握通过指针操作数组元素的方法。 3、掌握数组名作为函数参数的编程方式。 4、进一步掌握C程序的调试方法和技巧。 二.【实验内容和步骤】 1、程序调试题 A.目标:进一步学习掌握程序调试的方法和技巧。 B.内容:有n个整数,使各数顺序往后循环移动m个位置(m void mov(int *, int, int); int main() { int m, n, i, a[80], *p; printf("Input n, m:"); scanf("%d%d",&n,&m); for(p=a,i=0;i0;j--) x[j]=x[j-1]; /* 调试时设置断点 */ x[0]=k; } } ②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

实验八参考答案

实验8 参考答案 二、实验内容与操作步骤 (二) 函数的使用 1、统计函数的使用 其中F3单元的公式为=SUM(B3:E3) ,G3单元的公式为=A VERAGE(B3:E3)。 2、条件函数的使用 ⑶其中F3单元使用的公式为: =IF(E3>=90,”A”,IF(E3>=80,”B”,IF(E3>=70,”C”,IF(E3>=60,”D”,”E”))))。 然后双击F3单元的填充柄。 ⑷具体的操作步骤及计算公式如下: (1)在区域H2:H4输入统计间距数据59.9,79.9,99.9; (2)选定作为统计结果数据的输出区域:I2:I5; (3)输入频度分析统计函数的公式:=FREQUENCY(E3:E62,H2:H4); (4)按[Ctrl]+[Shift]+[Enter] 3、文本函数的使用 ⑵其中B3单元使用的公式为 =IF(LEFT(A3,3)=”101”,”数学系”,IF(LEFT(A3,3)=”102”,”物理系”,”化学系”))。 ⑶其中F3单元使用的公式为 =MID(E3,7,4) 。 4、日期函数的使用 ⑵其中E3单元使用的公式为 =YEAR(TODAY())-YEAR(D3)+1 。 ⑶其中F3单元使用的公式为 =TODAY()-D3 。 5、财务函数的使用 ⑵其中B5单元使用的公式为 =PMT(B2/12,B3*12,B4)。 ⑶其中E5单元使用的公式为 =PMT(E2/12,E3*12,,E4)。 6、排位函数的使用 ⑵其中G2单元使用的公式为 =F2-$B$10 。 ⑶其中H2单元使用的公式为 =RANK(F2,$F$2:$F$8,1) 或 =RANK(G2,$G$2:$G$8,1) 。 三、思考与练习 1、具体的操作步骤及计算公式如下: (1) 在区域F10:F13输入统计间距数据99,199,299,399; (2) 选定作为统计结果数据的输出区域:G10:G14; (3) 输入频度分析统计函数的公式:=FREQUENCY(C3:C23,F10:F13); (4) 按[Ctrl]+[Shift]+[Enter] 2、操作步骤及计算公式: