当前位置:文档之家› 软件测试技术实验指导书

软件测试技术实验指导书

软件测试技术实验指导书
软件测试技术实验指导书

软件测试实验指导书

西安理工大学

计算机科学与工程学院

2011年3月

目录

第1章实验基础知识 (1)

1.1软件测试概述 (1)

1.2测试用例的编写 (2)

第2章实验要求 (4)

2.1实验总体要求 (4)

2.1.1 实验意义和目的 (4)

2.1.2 实验内容安排 (4)

2.1.3 实验过程要求 (4)

2.2实验报告要求 (5)

2.3实验成绩评价 (5)

2.3.1 实验成绩评价结构及比例 (5)

2.3.2 考核方式 (5)

第3章实验内容与指导 (6)

3.1单元测试 (6)

3.1.1 实验类型 (6)

3.1.2 实验目的 (6)

3.1.3 背景知识 (6)

3.1.4 实验设备 (9)

3.1.5 实验内容 (9)

3.1.6 实验步骤 (9)

3.1.7 实验要求 (9)

3.2缺陷管理 (18)

3.2.1 实验类型 (18)

3.2.2 实验目的 (18)

3.2.3 背景知识 (18)

3.2.4 实验设备 (20)

3.2.5 实验内容 (20)

3.2.6 实验步骤 (20)

3.2.7 实验要求 (20)

3.3自动化功能测试 (10)

3.3.1 实验类型 (10)

3.3.2 实验目的 (10)

3.3.3 背景知识 (10)

3.3.4 实验设备 (10)

3.3.5 实验内容 (10)

3.3.6 实验步骤 (11)

3.3.7 实验要求 (11)

3.4自动化性能测试 (12)

3.4.1 实验类型 (12)

3.4.2 实验目的 (12)

3.4.3 背景知识 (12)

3.4.4 实验设备 (12)

3.4.5 实验内容 (12)

3.4.6 实验步骤 (13)

3.4.7 实验要求 (17)

第1章实验基础知识

1.1 软件测试概述

1.软件测试

软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。

2.测试过程

为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、系统测试和验收测试。

代码会审由一组人通过阅读、讨论和争议对程序进行静态分析的过程。

单元测试集中在检查软件设计的最小单位——模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。

集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。

系统测试是测试整个系统,以证实它满足“需求规格说明书”所规定的功能、质量和性能等方面的特性。

验收测试的目的是向未来的用户表明系统能够像预定要求那样工作。与系统测试非常相似,主要区别是测试人员不同,验收测试由用户执行。

3.测试方法

软件测试的方法分为功能性测试和结构性测试。

功能测试是指在对程序进行功能抽象的基础上,将程序划分成功能单元,然后在数据抽象的基础上,对每个功能单元生成测试数据进行测试。进行功能测试时,被测程序被当作打不开的黑盒,因而无法了解其内部构造,因此又称为黑盒测试。

结构性测试是知道产品内部工作过程,检测产品内部动作是否按照规格说明书的规定正常进行。它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。此方法把测试对象看作一个透明的盒子,又叫白盒测试。

4.测试工具

软件测试的工作量很大(据统计,会用到40% 的开发时间;一些可靠性要求非常高的软件,测试时间甚至占到总开发时间的60% ),但测试却是在整个软件过程中极有可能应用计算机进行自动化的工作,原因是测试的许多操作是重复性的、非智力创造性的、需求细致注意力的工作。测试工具的应用已经成为了普遍的趋势。测试工具一般可分为白盒测试工具、黑盒测试工具、性能测试工具,另外还有用于测试管理(包括测试流程管理、缺陷跟踪管理、测试用例管理)的工具。

本实验课程中主要涉及到eclipse开发平台、Junit单元测试工具、Selenium自动化功能测试工具和Jmeter性能测试工具。

1.2 测试用例的编写

1.测试用例

软件测试的本质是针对要测试的内容确定一组测试用例。测试用例是为实施一次测试而向被测系统提供的输入数据、操作或各种环境设置。

测试用例应该包含基本的内容有输入和预期输出,输入实际有两种类型:前提(在测试用例执行前已经存在的环境)和由某种测试方法所标识的实际输入。预期输出也有两类:后果和实际输出。测试活动要建立必要的前提条件,提供测试用例输入、观测输出、然后将这些输出与预期输出进行比较,以确定该测试是否通过。开发良好的测试用例的其他信息(如表1)主要支持测试管理,测试用例需求被开发、评审、使用、管理和保存。

表1-1 测试用例

有两种基本方法可以用来标识测试用例,即功能性测试和结构性测试。

功能性测试的基本观点是,任何程序都可以看作是将从定义域取值映射到输出值域的函数。这种观点常常在工程中使用,将系统看作是黑盒。采用功能性方法标识测试用例,所使用的唯一信息就是软件的规格说明。功能性测试用例具有两个显著的优点:(1)功能性测试与软件如何实现无关,所以如果实现发生变化,测试用例仍然有用;(2)测试用例开发可以与实现并行进行,因此可缩短总的开发时间。在缺点方面,功能性测试用例也常常带来两个问题:测试用例可能存在严重的冗余,此外可能还会有未测试的软件漏洞。功能性测试的主流方法主要有:边界值分析、健壮性分析、最坏情况分析、特殊值测试、输入等价类、输出等价类和基于决策树的测试。

结构性测试有时也叫白盒测试。结构性测试是知道软件产品内部工作过程,检测软件产品内部动作是否按照规格说明书的规定正常进行。结构性测试需要全面了解程序内部逻辑结构、对所有逻辑路径进行测试。结构性测试是穷举路径测试,并力求提高测试覆盖率。结构性测试的主要方法有:逻辑覆盖测试、基路径测试、数据流测试等方法。

在实际应用中,为全面的测试软件产品,一般将结构性测试和功能性测试结合起来使用。

2.软件缺陷分类

有多种方法可以对缺陷分类:以出现相应错误的开发阶段来划分、以相应失效产生的后果来划分、以解决难度来划分、以不解决难度会产生的风险来划分等等。在日常的软件测试中,通常给出的缺陷是根据缺陷后果的严重程度来进行划分,如下表2所示。在实际应用中可以根据具体情况对

严重程度来划分不同的等级。

3.测试用例的选择

选择测试用例是软件测试员最重要的一项任务,不正确的选择可能导致测试量过大或过小,甚至测试目标不对。

从工程实践的角度讲,测试用例有几条基本准则:

(1)测试用例的代表性:能够代表各种合理和不合理的、合法的和非法的、边界和越界的,以及极限的输入数据、操作和环境设置等;

(2)测试结果的可判定性:即测试执行结果的正确性是可判定的或可评估的;

(3)测试结果的可再现性:即对同样的测试用例,系统的执行结果应当是相同的。

第2章实验要求

2.1 实验总体要求

2.1.1 实验意义和目的

本实验课程配合《软件测试技术》理论课同步开设,其中包括设计型实验。本实验课程着眼于理论与应用的结合,注重培养学生软件测试的实际动手能力,增强软件工程项目的质量管理意识。通过实验教学,使学生掌握软件测试的方法和技术,并能运用软件测试工具进行自动化测试。

本实验课程要求学生完成适当的上机实习,并写出相应的实验报告。验证型题目使学生熟悉常用的软件测试工具。设计型题目使学生掌握软件测试的基本理论和基本方法,培养基本的应用能力。

2.1.2 实验内容安排

实验内容安排如表2-1所示。

2.1.3 实验过程要求

实验前要充分做好准备工作:

1.复习和掌握与本实验有关的知识内容;

2.预习、思考实验内容;

3.对实验内容进行分析和设计。

实验过程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。在指定的实验时间内,必须到实验室内做实验。

对于上机过程中出现的问题,尽量先独立思考和解决;对于难以解决的问题可以和同学交流或询问老师;对于同一个实验题目,可以考虑多种方法来实现,然后比较并选择出一种较为有效的方法来实现。

2.2 实验报告要求

实验后,应及时整理出实验报告,实验报告提交电子文档,实验报告具体内容见附录1:实验报告。

2.3 实验成绩评价

2.3.1 实验成绩评价结构及比例

实验课程的总成绩由实验考勤和实验报告成绩组成,其中实验考勤占10%,实验过程占20%,实验报告占70%。

2.3.2 考核方式

实验考核主要是三个方面:

1.上机实验考勤。每次上机应主动在指导老师处签到,冒签等不诚信行为一旦被发现,取消本次实验成绩。

如果学生需要请假,必须提前出具正式假条(需要班主任或者辅导员签字),不接受事后假条(如有特殊情况,需要有辅导员或班主任的情况说明)。

2.实验过程考核。每次实验课,指导教师根据实验过程情况,对每个学生的表现进行记录。

3.实验报告提交。应根据指导教师要求按时提交每次实验的数据。如果发现学生抄袭、伪造实验数据,或实验报告和设计报告抄袭、雷同,则涉及的所有学生的该课程实验成绩记为0分。

第3章实验内容与指导

3.1 单元测试

3.1.1 实验类型

实验类型为设计型,2个学时。

3.1.2 实验目的

(1)掌握白盒测试方法,并按单元测试的要求设计测试用例。

(2)能熟练应用junit测试工具进行单元测试;

(3)能应用Ant进行自动化测试;

(4)进行代码覆盖检查;

3.1.3 背景知识

一、逻辑覆盖

结构性测试力求提高测试覆盖率。逻辑覆盖是对一系列测试过程的总称,它是在使用白盒测试法时,选用测试用例执行程序逻辑路径的方法。

逻辑覆盖按覆盖程度由低到高大致分为以下几类:

(1)语句覆盖:设计若干测试用例,使程序中每一可执行语句至少执行一次;

(2)判断覆盖:设计用例,使程序中的每个逻辑判断的取真取假分支至少经历一次;

(3)条件覆盖:设计用例,使判断中的每个条件的可能取值至少满足一次;

(4)判断/条件覆盖:设计用例,使得判断中的每个条件的所有可能结果至少出现一次,而且判断本身所有可能结果也至少出现一次;

(5)条件组合覆盖。设计用例,使得每个判断表达式中条件的各种可能组合都至少出现一次;

显然,满足⑤的测试用例也一定是满足②、③、④的测试用例。

(6)路径覆盖。设计足够的测试用例,使程序的每条可能路径都至少执行一次。

如果把路径覆盖和条件组合覆盖结合起来,可以设计出检错能力更强的测试数据用例。

二、基本路径测试

如果把覆盖的路径数压缩到一定限度内,例如,程序中的循环体只执行零次和一次,就成为基本路径测试。它是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。

设计出的测试用例要保证在测试中,程序的每一个可执行语句至少要执行一次。

①程序的控制流图

控制流图是描述程序控制流的一种图示方法。基本控制构造的图形符号如图所示。符号○称为控制流图的一个结点,一组顺序处理框可以映射为一个单一的结点。控制流图中的箭头称为边,它表示了控制流的方向,在选择或多分支结构中分支的汇聚处,即使没有执行语句也应该有一个汇聚结点。边和结点圈定的区域叫做区域,当对区域计数时,图形外的区域也应记为一个区域。

图3-1 控制流图的各种图形符号

如果判定中的条件表达式是复合条件时,即条件表达式是由一个或多个逻辑运算符(OR,AND,NAND,NOR)连接的逻辑表达式,则需要改复合条件的判定为一系列只有单个条件的嵌套的判定。例如对应图3-2. (a) 的复合条件的判定,应该画成如图3-2. (b) 所示的控制流图。条件语句if a OR b 中条件a和条件b各有一个只有单个条件的判定结点。

图3-2 复合逻辑下的控制流图

②计算程序环路复杂性

进行程序的基本路径测试时,程序的环路复杂性给出了程序基本路径集合中的独立路径条数,这是确保程序中每个可执行语句至少执行一次所必需的测试用例数目的上界。

所谓独立路径,是指包括一组以前没有处理的语句或条件的一条路径。如在图3-3(b)所示的控制流图中,一组独立的路径是:

path1:1 - 11

path2:1 - 2 - 3 - 4 - 5 - 10 - 1 - 11

path3:1 - 2 - 3 - 6 - 8 - 9 - 10 - 1 - 11

path4:1 - 2 - 3 - 6 - 7 - 9 - 10 - 1 - 11

路径path1,path2,path3,path4组成了图3-3 (b) 所示控制流图的一个基本路径集。只要设计出的测试用例能够确保这些基本路径的执行,就可以使得程序中的每个可执行语句至少执行一次,每个条件的取真分支和取假分支也能得到测试。基本路径集不是唯一的,对于给定的控制流图,可以得到不同的基本路径集。

(a) 程序流程图(b) 控制流图

图3-3 程序流程图与对应的控制流图

通常环路复杂性可用以下三种方法求得。

?将环路复杂性定义为控制流图中的区域数。

?设E为控制流图的边数,N为图的结点数,则定义环路复杂性为V(G)=E-N+2。

?若设P为控制流图中的判定结点数,则有V(G)=P+1。

因为图5.14(b)所示控制流图有4个区域。其环路复杂性为4。它是构成基本路径集的独立路径数的上界。可以据此得到应该设计的测试用例的数目。

③导出测试用例

利用逻辑覆盖方法生成测试用例,确保基本路径集中每条路径的执行。

三、单元测试的步骤

通常单元测试在编码阶段进行。在源程序代码编制完成,经过评审和验证,确认没有语法错误之后,就开始进行单元测试的测试用例设计。利用设计文档,设计可以验证程序功能、找出程序错误的多个测试用例。对于每一组输入,应有预期的正确结果。

模块并不是一个独立的程序,在考虑测试模块时,同时要考虑它和外界的联系,用一些辅助模块去模拟与被测模块相联系的其它模块。这些辅助模块分为两种:

(1)驱动模块:相当于被测模块的主程序。它接收测试数据,把这些数据传送给被测模块,最后输出实测结果。

(2)桩模块:用以代替被测模块调用的子模块。桩模块可以做少量的数据操作,不需要把子模块所有功能都带进来,但不允许什么事情也不做。

被测模块、与它相关的驱动模块及桩模块共同构成了一个“测试环境”,如图3-1所示。

图3-1 单元测试环境

3.1.4 实验设备

主流PC机一套,windows操作系统eclipse开发平台、ant开源工具;

3.1.5 实验内容

1、用java语言编写一个WEB项目,针对一个或多个类,选用白盒测试或黑盒测试中的一种方法方法设计用例。

2、编写junit测试代码,并进行测试。

3、编写ant自动化测试脚本,使所有junit测试代码自动完成测试,并生成html格式测试报告

4、测试代码覆盖率,并生成html格式代码覆盖测试报告。

3.1.6 实验步骤

(1)根据白盒法设计测试用例,并撰写单元测试计划书;

(2)根据每个测试用例,编写基本Junit的单元测试脚本;

(3)通过编写ant脚本生成html格式的测试报告;

(4)生成html格式的代码覆盖测试报告;

3.1.7 实验要求

1、提交单元测试计划书(包含详细的白盒测试用例),要求格式规范,内容完整,描述清晰。

2、提交所有的代码和测试代码,要求代码组织合理;

3、提交ant生成的html格式报告。

4、提交生成的html格式代码覆盖测试报告

3.2自动化功能测试

3.2.1 实验类型

实验类型为验证型,2个学时。

3.2.2 实验目的

1、掌握selenium测试工具的基本原理和方法;

2、掌握selenium IDE测试和RC测试;

3.2.3 背景知识

Selenium是一个用于Web应用程序测试的工具。Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE,Mozilla和Firefox等。这个工具的主要功能包括:测试与浏览器的兼容性--测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能--创建衰退测试检验软件功能和用户需求。

Selenium 已经演化成了几个并行的子项目,它们分别是:Selenium Core、SeleniumIDE、Selenium Remote Control 和Selenium onRails。

Selenium Core 是测试工具的核心,也是其他子项目的依托。它是一个内嵌于浏览器中的JavaScript 和iframe 的自动化测试引擎。其最近一个发布版本是在2007 年9 月发布的0.8.3。Selenium IDE 是一个针对Selenium 测试的集成开发环境。它是作为Firefox 的扩展来实现的,允许录制、编辑和调试Selenium 测试。目前的最新版本是0.8.7。

Selenium Remote Control 提供了一个Selenium Server,它以Ajax 方式来控制浏览器。你可以通过普通的HTTP 请求与Selenium Server交互,这使得你能够用许多主流编程语言(比如Java、.NET、Perl、Python、Ruby)来编写自动化的Web 应用UI 测试。Selenium Remote Control目前的最新版本是2007 年9 月发布的0.9.2。

Selenium on Rails 是一个专门用于为测试Rails 应用程序提供便利的插件。它原来是由Jonas Bengtsson 在其个人网站上发布的,2006年8 月刚刚搬迁到Selenium 的官方主页。

3.2.4 实验设备

主流PC机一套,windows操作系统、WEB项目、selenium 、tomcat ;

3.2.5 实验内容

1、制定功能测试计划和内容,编写功能测试用例

2、安装selenium IDE 和server;

3、利用selenium IDE,根据功能测试用例,录制功能测试脚本,并进行保存和回放;

4、启动selenium server,利用java语言和junit编写功能测试代码,对WEB项目中所有的功能进行测试;

3.2.6 实验步骤

(1)根据软件需求,编写测试计划和测试用例;

(2)根据测试用例,录制测试脚本;

启动firefox,点击“工具->selenium IDE”,启动selenium IDE插件,进入录制状态

在firefox地址栏中输入URL,并进行操作,selenium IDE自动记录用户的操作步骤

操作完成后,点击selenium IDE插件中的录制按钮,停止录制。

(3)根据测试用例,基于senelium RC模式编写测试脚本;

Selenium RC使用方法详见《selenium使用指南V1.0_夏辉.doc》

(4)撰写实验报告

3.2.7 实验要求

1、撰写实验报告,主要填写本人上机测试步骤和测试内容;

2、提交录制的测试脚本和编写的测试脚本(100%测试通过);

3.3自动化性能测试

3.3.1 实验类型

实验类型为验证型,2个学时。

3.3.2 实验目的

1、掌握性能测试的基本原理和方法;

2、掌握jmeter测试工具使用方法

3、掌握IBM Performance tester工具使用方法

4、掌握性能测试的分析方法

3.3.3 背景知识

Apache jmeter 是一个100%的纯java桌面应用,用于压力测试和性能测量。它最初被设计用于Web应用测试但后来扩展到其他测试领域。

Apache jmeter 可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java 对象,数据库和查询,FTP服务器等等)的性能进行测试。它可以用于对服务器,网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。

Jmeter能够进行压力和性能测试,也可以对任何数据库进行同样的测试(通过JDBC)。

3.3.4 实验设备

主流PC机一套,windows操作系统、WEB项目、jmeter、tomcat、badboy;

3.3.5 实验内容

1、制定性能测试计划和内容,编写性能测试用例

2、安装jmter和tomcat

3、利用jmeter,根据性能测试用例,编写功能测试脚本

4、运行jmeter,获得运行结果

5、针对不同性能测试用例,分析性能测试结果

3.3.6 实验步骤

一、实验环境准备

安装jdk1.5及以上版本

安装badboy

配置JA V A_HOME和CLASSPATH。

从apache官方网站https://www.doczj.com/doc/946278303.html,/jmeter/index.html下载Jmeter二进制文件并解压缩,启动%JMeter%\bin\jmeter.bat批处理文件,显示jmeter可视化界面。

启动tomcat

二、建立测试计划(Test Plan)

测试计划描述了执行测试过程中JMeter的执行过程和步骤,一个完整的测试计划包括一个或者多个线程组(Thread Groups)、逻辑控制(Logic Controller)、实例产生控制器(Sample Generating Controllers)、侦听器(Listener)、定时器(Timer)、比较(Assertions)、配置元素(Config Elements)。打开JMeter时,它已经建立一个默认的测试计划,一个JMeter应用的实例只能建立或者打开一个测试计划。

现在我们开始填充一个测试计划的内容,这个测试计划向一个jsp文件和一个servlet发出请求,我们需要JMeter模拟五个请求者(也就是五个线程),每个请求者连续请求两次,下面的章节介绍了详细的操作步骤。

三、增加负载信息设置

我们需要模拟五个请求者,每个请求者在测试过程中连续请求两次。详细步骤如下:

1. 选中可视化界面中左边树的Test Plan节点,单击右键,选择Add'Thread Group,界面右边将会出现他的设置信息框。

2. Thread Group有三个和负载信息相关的参数:

线程数(Number of Threads):设置发送请求的用户数目

请求间隔时间(Ramp-up period):每个请求发生的总时间间隔,单位是秒。比如你的请求数目是5,而这个参数是10,那么每个请求之间的间隔就是10/5,也就是2秒

循环次数(Loop Count):请求发生的重复次数,如果选择后面的forever(默认),那么请求将一直继续,如果不选择forever,而在输入框中输入数字,那么请求将重复指定的次数,如果输入0,那么请求将执行一次。

将Number of Threads设置为5,Ramp-up period设置为0(也就是同时并发请求),不选中forever,在Loop Count后面的输入框中输入2。

四、增加默认Http属性(可选)

实际的测试工作往往是针对同一个服务器上Web应用展开的,所以Jmeter提供了这样一种设置, 在默认Http属性设置需要被测试服务器的相关属性,以后的http请求设置中就可以忽略这些相同参数的设置,减少设置参数录入的时间。

我们这里将采用这种属性。你可以通过下面的步骤来设置默认http属性:

1. 选中可视化界面中左边树的Test Plan节点,单击右键,选择“添加->配置元件->http请求默认值”,界面右边将会出现他的设置信息框。

2. 默认http属性的主要参数说明如下:

protocal:发送测试请求时使用的协议

server name or ip:被测试服务器的ip地址或者名字

path:默认的起始位置。比如将path设置为/jmeter,那么所有的http请求的url中都将增加/jmeter路径。

port number:服务器提供服务的端口号

针对本机的Web服务器上的Web应用进行测试,所以protocal应该是http,ip使用localhost,因为这个web应用发布的context路径是/jspNews,所以这里的path设置为/jspNews,因为使用Tomcat服务器,所以port number是8080。

五、增加Http请求

增加http请求是测试的内容主体部分。可以通过下面的步骤来增加性的http请求:

1. 选中可视化界面中左边树的Thread Group节点,单击右键,选择“添加->sampler->http请求”,界面右边将会出现他的设置信息框。

2.参数设置和“增加默认Http属性”介绍的http属性差不多,增加的属性中有发送http时方法的选择,可以选择为get或者post。

现在增加两个http 请求,因为我们设置了默认的http属性,所以和默认http属性中相同的属性不再重复设置。

六、增加Listener

增加listener是为了记录测试信息并且可以使用Jmeter提供的可视化界面查看测试结果,里面有好几种结果分析方式可供选择,你可以根据自己习惯的分析方式选择不同的结果显示方式,我们这里使用表格的形式来查看和分析测试结果。你可以通过下面的步骤来增加listener:

1. 选中可视化界面中左边树的Test Plan节点,单击右键,选择“添加->监听器->聚合报告”

2. 选中可视化界面中左边树的Test Plan节点,单击右键,选择“添加->监听器->用表格观察结果”。

3. 选中可视化界面中左边树的Test Plan节点,单击右键,选择“添加->监听器->图形结果”。字段说明:

?Label:每个JMeter 的element (例如HTTP Request )都有一个Name 属性,这里显示的就是Name 属性的值

?#Samples:表示你这次测试中一共发出了多少个请求,我的测试计划模拟10 个用户,每个用户迭代10 次,因此这里显示100

?Average:平均响应时间——默认情况下是单个Request 的平均响应时间,当使用了Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间?Median:中位数,也就是50 %用户的响应时间

?90% Line:90 %用户的响应时间

?Min:最小响应时间

?Max:最大响应时间

?Error%:本次测试中出现错误的请求的数量/ 请求的总数

?Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second ),当使用了Transaction Controller 时,也可以表示类似LoadRunner 的Transaction per Second 数

?KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner 中的Throughput/Sec

七、开始执行测试计划

现在你可以通过单击菜单栏run -> Start开始执行测试计划了,结果如下图所示:

八、用badboy录制jmeter脚本

Badboy是一款不错的Web自动化测试工具,如果你将它用于非商业用途,或者用于商业用途但是安装Badboy 的机器数量不超过5台,你是不需要为它支付任何费用的。也许是一种推广策略,Badboy提供了将Web测试脚本直接导出生成JMeter 脚本的功能,并且这个功能非常好用,也非常简单。

录制过程如下:

1、在地址栏输入你需要录制的Web应用的URL—这里以https://www.doczj.com/doc/946278303.html, 为例,并点击GO 按钮开始录制。

2、开始录制后,你可以直接在Badboy内嵌的浏览器(主界面的右侧)中对被测应用进行操作,所有的操作都会被记录在主界面左侧的编辑窗口中。

3、在这个试验中,我们点击图书馆,输入自己的帐号和密码,登录到图书管理系统中。

4、录制完成后,点击工具栏中的“停止录制”按钮,完成脚本的录制;

5、选择“File -> Export to JMeter”菜单,填写文件名“login_books.jmx”,将录制好脚本导出为JMeter 脚本格式。也可以选择“File -> Save”菜单保存为Badboy脚本;

6、启动JMeter并打开刚刚生成的测试脚本。

7、插入各种监听器,生成测试报告

62660299

3.3.7 实验要求

1、撰写实验报告,主要填写本人上机测试步骤和测试内容;

2、提交性能测试脚本

软件测试实验报告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;

(项目管理)项目管理及软件测试实验指导书

《项目管理及软件测试》 实验指导书 成都电子机械高等专科学校 计算机工程系

目录 实验一Rational Suite Enterprise的安装(2)实验二三角形问题的黑盒测试(9)实验三NextDate函数的黑盒测试(12)实验四Rational PureCoverage基本练习(16)实验五Rational PureCoverage案例测试(20)实验六Rational Purify基本练习(22)实验七Rational Purify案例测试(26)实验八Rational Quantify基本练习、案例测试(29)实验九在Rational Administrator中创建测试项目(34)实验十Rational Robot功能测试(39)实验十一Rational Robot性能测试(49)实验十二用Project 2003进行项目计划编写(65)

实验一 Rational Suite Enterprise的安装(2学时) 一.实验目的 ●掌握软件测试工具的安装、基本使用。 二.实验环境 ●windows 2000,512MB内存,80G硬盘。 ●Rational Suite Enterprise 2003 三.实验内容及步骤 1.首先打开\\USER\软件测试\CD1,然后双击Setup.exe会出现如下图: 2 单击下一步,如下图:

3再打击下一步如下图: 4选择默认,单击下一步:

5单击Next: 6单击Update,出现如下图:

7单击Next,出现如下图: 8耐心等待单击直到完成,单击Finish就完成.

软件测试技术实验指导书2016版

《软件测试技术》实验指导书 吴鸿韬

河北工业大学计算机科学与软件学院 2016年9月 目录

第一章实验要求 (1) 第二章白盒测试实践 (3) 第三章黑盒测试实践 (6) 第四章自动化单元测试实践 (7) 第五章自动化功能测试实践 (35) 第六章自动化性能测试实践 (56) 附录1实验报告封皮参考模版 (71) 附录2小组实验报告封皮参考模版 (72) 附录3软件测试计划参考模版 (73) 附录4 测试用例参考模版 (77) 附录5单元测试检查表参考模版 (81) 附录6测试报告参考模版 (82) 附录7软件测试分析报告参考模版 (87)

第一章实验要求 一、实验意义和目的 软件测试是软件工程专业的一门重要的专业课,本课程教学目的是通过实际的测试实验,使学生系统地理解软件测试的基本概念和基本理论,掌握软件测试和软件测试过程的基本方法和基本工具,熟练掌握软件测试的流程、会设计测试用例、书写测试报告,为学生将来从事实际软件测试工作和进一步深入研究打下坚实的理论基础和实践基础。 本实验指导书共设计了2个设计型、3个验证型实验和一个综合型实验,如表1所示。设计型实验包括白盒测试实践和黑盒测试实践,验证型实验包括自动化单元测试实践、自动化功能测试和自动化性能测试实践,主要目标是注重培养学生软件测试的实际动手能力,增强软件工程项目的质量管理意识。通过实践教学,使学生掌握软件测试的方法和技术,并能运用测试工具软件进行自动化测试。综合型实验以《软件设计与编程实践》课程相关实验题目为原型、在开发过程中进行测试设计与分析,实现软件开发过程中的测试管理,完成应用软件的测试工作,提高软件测试技能,进一步培养综合分析问题和解决问题的能力。 表1 实验内容安排 实验内容学时实验性质实验要求 实验一白盒测试实践 4 设计必做 实验二黑盒测试实践 4 设计必做 实验三自动化单元测试实践 4 验证必做 实验四自动化功能测试实践 4 验证必做 实验五自动化性能测试实践 4 验证必做 实验六、综合测试实践课外综合选做 二、实验环境 NUnit、JUnit、LoadRunner、Quick Test Professional、VC6.0、Visual

软件测试技术实验报告册

工程学院 计算机学院 软件测试技术实验报告册 适用专业: 学期: 专业: 班级: 学号: 姓名: 指导教师: 2014年9月

目录 实验一 (1) 实验二 (5) 实验三 (10) 实验四 (13) 实验五 (16) 实验六 (19) 附录 (22)

实验一、黑盒测试 一、实验目的 1、熟练掌握黑盒测试方法的相关知识和方法; 2、熟练等价类划分方法、边界值分析法、判定表方法和因果图法; 3、掌握基本的测试用例的设计。 二、实验容 1.题目一:问题 某城市由三部分组成。它们的名称和容分别是: (1)地区码:空白或三位数字; (2)前缀:非'0'或'1'的三位数字; (3)后缀:4位数字。 假定被测程序能接受一切符合上述规定的,拒绝所有不符合规定的。根据该程序的规格说明,作等价类的划分,并设计测试方案。 2.题目二:三角形问题 根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 “一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。” 3.题目三:日期问题 用决策表测试法测试以下程序:该程序有三个输入变量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) ,画出简化后的决策表。

软件测试实验报告材料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

黑盒测试实验报告

实验报告书 课程名称:软件测试 实验题目:黑盒测试报告 专业:教育技术学 班级:教技142 学生姓名:安卓 指导老师:郭小雪 所属学期:2017-2018学年第二学期

一、引言 1.1目的 测试报告为三角形问题和找零钱最佳组合问题项目的黑盒测试报告,目的在于总结测试阶段的测试以及分析测试结果。 实验环境 在Windows 2000(SP2) 或Windows XP 操作系统上,使用C++语言,工具作为开发环境(IDE) 实验要求 1.根据给出的程序分别使用等价类划分法、边界值分析法、判定表 方法、因果图法、正交试验法、功能图法、错误推测法来设计相应的测试用例。 2.输入数据进行测试,填写测试用例。 二、实验原理 黑盒测试原理:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看作一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试。 从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都

作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。 等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。该方法是一种重要的,常用的黑盒测试用例设计方法。 1 划分等价类 划分等价类:等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。 有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中

软件测试实验报告

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

黑盒测试软件测试实验报告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");

软件测试——实验1

淮海工学院(计算机工程学院)课内实验报告实验名称:黑盒测试 专业名称:软件工程 班级:Z软件161 姓名:陈真杰 学号:2018140539 指导教师:陈艳艳 实验日期:2019年3月13

一、实验目的与环境 1.实验目的: (1)理解黑盒测试的含义以及基本的测试方法。 (2)采用等价类划分法设计测试用例。 (3)掌握用等价类划分法设计测试用例的方法。 (4)掌握用因果图设计测试用例的方法。 (5)掌握用边界值分析法设计测试用例的方法。 2.实验环境:C语言、Java语言、Python语言等。 二、实验内容 1.三角形问题:输入3个整数a、b、c,分别作为三角形的3条边,通过程序判断由 3条边构成的三角形的类型为等边三角形、等腰三角形、一般三角形或者3条边不构成三角形。 2.现有一个学生标准化考试批阅试卷、产生成绩报告的程序。其规格说明为:程序的 输入文件有80个字符的记录组成,分为试题部分和学生答卷部分,具体内容如图所示。 试题部分包括如下内容: (1)标题。这一组只有一个记录,其内容为输出成绩报告的名字。 (2)标准答案。每个记录在第80个字符处标以数字2。第一个记录的第1~3个字符为“试题数”,用于标示题目编号;第10~59个字符给出第1~50题的答案,以此类推。 学生答卷部分包括内容:每个记录的第80个字符均为数字3。第1~9个字符给出学号,第10~59字符给出第1至第50题的答案,以此类推。 程序的输出有4个报告: (1)按学号排列的成绩单,列出每个学生的成绩、名次。 (2)按学生成绩排序的成绩单。 (3)平均分数及标准偏差的报告。 (4)试题分析报告。按试题号排序,列出各题学生答对的百分比。

软件测试技术实验报告

《软件测试技术》 实验报告 河北工业大学计算机科学与软件学院 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);

软件测试实验指导

实验二:黑盒测试时间:2011-3-6 【实验目的】 1)掌握边界值分析,等价类技术。 2)掌握开发一个决策表和相应的测试用例的方法。 【实验要求】 (1)认真阅读和掌握和本实验相关的教材内容。 (2)分析问题的要求,开发相关程序。 (3)用等价分类法测试党员出生年月的输入设计是否符合要求和相应的测试用例。 (4)开发一个决策表和相应的测试用例。 【实验内容】 1、试用等价分类法测试同学出生年月的输入设计是否符合要求,假设出生年月格式为yyyymmdd。 解: 输入数据无效等价类有效等价类 出生年月日①8位数字字符②有非数字字符 ③少于8个数字符 ④多于8个数字符 对应数值⑤在0101之间⑥< ⑦> 月份对应数值⑧在1-12之间⑨等于"00 " ⑩>12 日期对应值○111,3,5,7,8,10,12月在1-31之 间 ○124,6,9,11月在1-30之间 ○13闰年2月在1-29之间 ○14非闰年2月在1-28之间○15等于"00 " ○16>31 ○172,4,6,9,11月等于"31 "○182月等于"30 " ○19非闰年2月等于"29" 请写出你用的开发语言,你开发的程序,测试过程和结果。 2.试为三角形问题中的直角三角形开发一个决策表和相应的测试用例。注意,会有等腰直角三角形。 解:判断构成的是否为直角三角形的问题的决策表设计如下: c1:a

软件测试实验报告

桂林航天工业学院 课程设计报告 课程名称:软件测试 专业:软件技术 学号: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

《软件测试》实验指导

《软件测试》实验指导书 1.每个小组选定一个应用,各个小组所选定的应用不一样,选定应用事先(4月22日 前)报告给老师,获得老师的肯定 1)可以是C/S 架构,也可以是B/S架构,但必须包含两部分(web/Windows/Mac)客 户端和服务器 2)应用不能过于简单,测试可以选其中一个模块或组件 2.基于这个应用,完成下列测试 1)功能测试:针对Windows客户端或Web客户端 功能测试工具:Selenium 或AutoIT 要求: ●设计20个以上的测试用例; ●采用两种或两种以上的方法(等价类、边界值、决策表、状态转换)来设计测 试用例; ●开发相应的测试脚本,包括修改、调试脚本的关键记录; ●执行测试用例,发现若干个缺陷。 2)性能测试:针对服务器端 性能测试工具:JMeter 要求: a)说明如何选定关键业务 b)设计合适的负载模式,包括负载大小、加载方式等 c)参数设计,如Thinking time , 通过test action的 thread pause 和 constant timer两种方法实现; d)测试2种及2种以上的协议(FTP/HHTP/JDBC/LDAP), 其中HTTP是必选项; e)使用HTTP Cookie 管理器、HTTP授权管理器等; f)需要验证某些必要的结果,使用两种以上的Assertion(断言)。 g)对测试结果(表格和图形)进行分析 3.提交的内容 1)功能测试用例及其脚本:文档类型不限制 2)性能测试方案设计和结果分析:Word 文档 3)缺陷报告:Excel 文档 4)总结陈述报告:PPT文件, 包括对上面3项内容的总结,以及每个成员的贡献。 4.内容提交的截止时间:#月#日 5.答辩时间:#月#日

软件测试技术实验报告册

. 精选范本 河南工程学院 计算机学院 软件测试技术实验报告册 适用专业: 学期: 专业: 班级: 学号: 姓名: 指导教师: 2014年9月

. 精选范本目录 实验一 (1) 实验二 (5) 实验三 (10) 实验四 (13) 实验五 (16) 实验六 (19) 附录 (22)

. 精选范本实验一、黑盒测试 一、实验目的 1、熟练掌握黑盒测试方法的相关知识和方法; 2、熟练等价类划分方法、边界值分析法、判定表方法和因果图法; 3、掌握基本的测试用例的设计。 二、实验内容 1.题目一:电话号码问题 某城市电话号码由三部分组成。它们的名称和内容分别是: (1)地区码:空白或三位数字; (2)前缀:非'0'或'1'的三位数字; (3)后缀:4位数字。 假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。 2.题目二:三角形问题 根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 “一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。” 3.题目三:日期问题 用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month 、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为2004 年11月29日,则该程序的输出为2004年12月1日。 (1) 分析各种输入情况,列出为输入变量month 、day 、year 划分的有效等价类。 (2) 分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。

软件测试实验报告

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

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

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;

软件测试实验指导书

软件测试实验指导书 软件测试实验课程指导书2021 信息技术学院软件工程系 郭烨 第1章实验基础知识 1.1 软件测试概述 1.软件测试 软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。 2.测试过程为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、系统测试和验收测试。代码会审由一组人通过阅读、讨论和争议对程序进行静态分析的过程。单元测试集中在检查软件设计的最小单位——模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。系统测试是测试整个系统,以证实它满足“需求规格说明书”所规定的功能、质

量和性能等方面的特性。验收测试的目的是向未来的用户表明系统能够像预定要求那样工作。与系统测试非常相似,主要区别是测试人员不同,验收测试由用户执行。 3.测试方法 软件测试的方法分为功能性测试和结构性测试。功能测试是指在对程序进行功能抽象的基础上,将程序划分成功能单元,然后在数据抽象的基础上,对每个功能单元生成测试数据进行测试。进行功能测试时,被测程序被当作打不开的黑盒,因而无法了解其内部构造,因此又称为黑盒测试。 结构性测试是知道产品内部工作过程,检测产品内部动作是否按照规格说明书的规定正常进行。它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。此方法把测试对象看作一个透明的盒子,又叫白盒测试。 4.测试工具 软件测试的工作量很大(据统计,会用到40% 的开发时间;一些可靠性要求非常高的软件,测试时间甚至占到总开发时间的60% ),但测试却是在整个软件过程中极有可能应用计算机进行自动化的工作,原因是测试的许多操作是重复性的、非智力创造性的、需求细致注意力的工作。测试工具的应用已经成为了普遍的趋势。测试工具一般可分为白盒测试工具、黑盒测试工具、性能测试工

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

沈阳理工大学职业技术学院 《软件测试技术》 综合实验报告 题目:对《图书出借管理系统》 _ 软件的测试用例设计 系别:信息工程系 专业:软件技术 班级学号: 学生姓名: 成绩: 指导教师: 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/946278303.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

实验1利用黑盒测试技术设计测试用例分析

14级本科《软件测试技术》实验指导书 实验1 利用黑盒测试技术设计测试用例 【实验目的】 1、熟悉并掌握黑盒测试的方法:等价类划分法、边界值分析法、错误推测法、场景法。 2、了解待测的功能,灵活应用黑盒测试方法中的等价类划分法、边界值分析法、错误推测法以及场景法,设计测试用例,掌握正面测试和负面测试。 【实验内容】 【1】应用等价类划分法进行测试。 用户注册功能,要求用户密码必须满足两个条件: 长度为6到8位。 必须是字母和数字的组合。 (1)请分析等价类,填写表1-1。 表1-1 等价类表 (2)根据表1-1的等价类设计测试数据,填写表 1-2。 表1-2 根据等价类划分法设计的测试数据 【2】应用等价类划分法和边界值分析法进行测试。 在教务系统中进行课程成绩录入,要求0≤成绩≤100,且成绩为整数。 (1)请分析等价类,填写表1-3。 表1-3 等价类表

(2)根据表1-3的等价类设计测试数据,填写表1-4。 表1-4 根据等价类划分法设计的测试数据 (3)根据边界值分析法设计测试数据,填写表1-5。 表1-5 根据边界值分析法设计的测试数据 阅读附录A.9的功能描述,了解借书功能。设计借书功能的测试用例。(1)首先按照场景法来分析借书功能的基本流和备选流,见表2-12。 表2-12 借书功能的基本流和备选流 (2)设计借书功能的场景,见表2-13。 表2-13 借书功能的场景设计

I(Invalid,无效的)表示无效数据,“n/a”表示这个条件不适用于测试用例。 表2-14 测试用例表 【4】设计修改产品功能的测试用例。 阅读附录A.3、A.4的功能描述,了解添加产品、修改产品功能,分析添加产品功能的测试用例的设计思路,如表2-4所示,参考添加产品功能的测试用例(如表2-5所示),设计修改产品功能的测试用例,填写表2-6。 表2-4 添加产品功能的测试用例的设计思路

件测试实验指导书

软件测试实验指导书 徐芳编 计算机应用工程系 二○一○年

实验一:错误报告编写 一、实验目的 1.熟悉缺陷报告的编写内容 2.熟悉缺陷管理的工作流程 二、实验内容: 1、测试管理系统,编写有一定质量的缺陷报告 三、实验内容与步骤: 1、安装管理系统,运行并进行测试,针对所发现的错误,编写有一定 质量的缺陷报告。 2、该缺陷报告需要提交给程序开发人员进行问题的修改,缺陷报告中 对问题的描述需要直观和清晰。至少需要包括一下内容: 表3-1 2、本次课结束时以Word文档形式提交缺陷报告,文件命名格式为: xx(两位序号)+姓名.doc。

实验二:测试用例设计 一、实验目的 通过实验,掌握常用黑盒测试用例设计方法,实现系统测试。 二、实验内容: 1、针对被测试软件理解软件功能需求 2、根据软件功能需求,进行等价类划分 3、根据等价类,编写软件的测试用例。 4、执行测试用例,记录错误信息 三、实验内容与步骤: 1、安装酒店行业管理信息系统 2、阅读使用说明 3、运行酒店行业管理信息系统,结合使用说明中的内容,整理三个 功能模块的测试需求:前台操作模块中的“开房”、“消费记账”、 “正常退房”,代码管理模块中的“软件设置”、系统管理模块中 “用户管理”。 4、根据系统的使用说明,分析输入数据的规则和要求。 5、考虑实际使用中不同的用户场景,进行等价类划分。 6、完成测试用例,主要考虑等价类覆盖和边界值。 7、执行测试 8、记录错误报告 测试用例设计步骤 一、第一步:软件功能理解整理: 1.1)从整体上理解商业处理过程 1.2)具体分析完成整个商业过程中存在的业务规则和要求 1.3)分析输入数据的要求 1.4)根据前面三个步骤,整理出软件的功能清单 例如: ?系统提供客户入住办理,客户分为个人和团体; ?一个客户可以开多间房; ?客人分为新客户和老客户,对老客户系统能按照姓名识别其历史入住信息; ?客户办理入住时必须填写姓名、入住类型、押金、入住日期;

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