首页 > 文库大全 > 实用范文 > 其他范文

黑盒测试技术实验报告(最终5篇)

黑盒测试技术实验报告(最终5篇)



第一篇:黑盒测试技术实验报告

黑盒测试技术 — 三角形问题 实验报告 一、问题描述 输入三个整数 a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型并输出(等边三角形、等腰三角形、一般三角形),如果不构成三角形输出不能构成三角形。

要求:(1)输入三个整数 a、b、c,必须满足以下条件:1≤a≤200;1≤b≤200;1≤c≤200。

(2)容错处理:输入空值的提示;输入的值满足类型的提示;(3)不限制开发环境,不限制开发语言;(4)尽可能不对自己的程序进行测试设计。

(5)请分别采用边界值分析法、等价类分析法、决策表分析法、基于场景分析法设计测试用例;(6)正文格式(除源代码用小五号单倍行距),其他行距固定值 20,字号小四。

二、程序主要源代码 (标注:测试的源代码是哪位同学(学号姓名)编写的。)

三、程序界面(截图)

四、设计测试用例

1.用边界值测试方法设计测试用例

用边界值分析法设计测试用例,按照下列步骤进行:

((1)

分析各变量取值 三角形三条边的取值范围都是 1-200,所以边长 A 的边界点为 1 和 200,边长 B的边界点为 1 和 200,边长 C 的边界点为 1 和 200。

((2)

测试用例数 输入条件 边界值 测试数据 A 1,200 0,1,2,199,200,201 B 1,200 0,1,2,199,200,201 C 1,200 0,1,2,199,200,201

设计测试用例(给出所有测试用例)

三角形问题的测试用例 测试用例 编号 输入数据 预期输出 测试结果 a b c 1 0 100 100 边长 A 不合法

边长 A 不合法1 100 100 等腰三角形 等腰三角形 3 2 100 100 等腰三角形 等腰三角形 4 199 100 100 等腰三角形 等腰三角形 5 200 100 100 不是三角形 不是三角形 6 201 100 100 边长 A 不合法

边长 A 不合法100 0 100 边长 B 不合法

边长 B 不合法100 1 100 等腰三角形 等腰三角形 9 100 2 100 等腰三角形 等腰三角形 10 100 199 100 等腰三角形 等腰三角形 11 100 200 100 不是三角形 不是三角形 12 100 201 100 边长 B 不合法

边长 B 不合法100 100 0 边长 C 不合法

边长 C 不合法100 100 1 等腰三角形 等腰三角形 15 100 100 2 等腰三角形 等腰三角形 16 100 100 199 等腰三角形 等腰三角形 17 100 100 200 不是三角形 不是三角形 18 100 100 201 边长 C 不合法

边长 C 不合法

2.用等价类测试方法设计测试用例

((1)首先分析题目中给出的条件和隐含的输入要求,输入条件如下:

条件:1<=边长 A<=200,1<=边长 B<=200,1<=边长 C<=200

隐含条件:A输入条件 有效等价类 无效等价类 是否是三角形 1.1<=A<=200 2.1<=B<=200 3.1<=C<=200 4.A200 9.C<1 || C>200 10.A>=B+C 11.B>=A+C 12.C>=A+B 等腰三角形 13.A=B&&B!=C 14.A=C&&C!=B 15.B=C&&C!=A 16.A!=B&&A!=C&&B!=C 等边三角形 17.A=B=C 18.A!=B 19.A!=C 20.B!=C

(3)设计测试用例,覆盖上表中的等价类,如表 1-3 表所示。(至少 20 条)

表 表 1-3 三角形问题的测试用例 测试用例 编号 输入数据 预期输出 覆盖等价类 测试结果 a b c 1 100 100 100 等边三角形 1,2,3,4,5,6,17 等边三角形 2 50 50 50 等边三角形 1,2,3,4,5,6,17 等边三角形 3 150 150 150 等边三角形 1,2,3,4,5,6,17 等边三角形 4 50 100 100 等腰三角形 1,2,3,4,5,6,15 等腰三角形 5 100 50 100 等腰三角形 1,2,3,4,5,6,14 等腰三角形 6 100 100 50 等腰三角形 1,2,3,4,5,6,13 等腰三角形 0 2 3 边长 A 不合法 7 边长 A 不合法 8 2 1 3 不是三角形 12 不是三角形 9 3 0 1 边长 B 不合法 8 边长 B 不合法 10 3 1 2 不是三角形 10 不是三角形 11 1 3 0 边长 C 不合法 9 边长 C 不合法 12 2 3 1 不是三角形 11 不是三角形 13 50 51 52 不是等腰三角形

1,2,3,4,5,6,16 一般三角形 14 51 52 50 不是等腰三角形

1,2,3,4,5,6,16 一般三角形 15 52 50 51 不是等腰三角形

1,2,3,4,5,6,16 一般三角形 16 100 100 101 不是等边三角形

1,2,3,4,5,6,19,20 等腰三角形 17 100 101 100 不是等边三角形

1,2,3,4,5,6,18,20 等腰三角形 18 101 100 100 不是等边三角形

1,2,3,4,5,6,18,19 等腰三角形 19 50 50 51 不是等边三角形

1,2,3,4,5,6,19,20 等腰三角形 20 50 51 50 不是等边三角形

1,2,3,4,5,6,18,20 等腰三角形 21 51 50 50 不是等边三角形

1,2,3,4,5,6,18,19 等腰三角形

3.用决策表测试方法设计测试用例

((1)构建决策表

((2)化简 测试用例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 输入条件 是三角形 Y Y Y Y Y Y Y Y N N N N N N N N A=B Y Y N Y N Y N N N Y Y Y N N Y N A=C Y N Y Y Y N N N N Y Y N Y N N Y B=C Y Y Y N N N Y N N Y N Y Y Y N N 预期输出 不是三角形

等腰三角形

等边三角形

一般三角形

出错提示

测试用例 1 2,3,4 5,6,7 8 9-16 输入条件 是三角形

A=B

A=C

B=C

预期输出 不是三角形

Y 等腰三角形

Y

等边三角形

Y

一般三角形

Y

出错提示

Y

((3)化简后的测试用例设计 测试用例 编号 输入数据 预期输出 覆盖等价类 测试结果 a b c 1 50 50 50 等边三角形 1,2,3,4,5,6,17 等边三角形 2 50 50 51 等腰三角形 1,2,3,4,5,6,13 等腰三角形 3 51 50 50 等腰三角形 1,2,3,4,5,6,15 等腰三角形 4 50 51 50 等腰三角形 1,2,3,4,5,6,14 等腰三角形 5 1 2 3 不是三角形 12 不是三角形 6 1 3 2 不是三角形 11 不是三角形 7 3 2 1 不是三角形 10 不是三角形 8 2 3 4 一般三角形 1,2,3,4,5,6 一般三角形 9 3 2 4 一般三角形 1,2,3,4,5,6 一般三角形 10 4 3 2 一般三角形 1,2,3,4,5,6 一般三角形

4.基于场景的测试

(1 1)基本流和备选流图

(2 2)场景设计

场景 1 1 :基本流

场景 2 2 :基本流+ + 备选流 1 1

场景 3 3 :基本流+ + 备选流 2 2

场景 4 4 :基本流+ + 备选流 3 3

场景 5 5 :基本流+ + 备选流 4 4

(3 3))

测试用例设计

开始输入 输入 A,B,C 判断各边边长是否是在 1-200 A+B>C && A+C>B && B+C>A 备选流 1:边长不符合条件 备选流 2:不是三角形 是三角形 备选流 3:是等腰三角形 备选流 4:是等边三角形 一般三角形 结束

场景

A A

B B

C C

预期输出

测试结果1234

一般三角形

一般三角形2

0 0

0 0

0 0

边长错误

边长错误3247

不是三角形

不是三角形4

等腰三角形

等腰三角形5

等边三角形

等边三角形

5.测试结果分析与总结(至少 0 150 字,对测试过程中失败用例的原因进行分析,对学习了黑盒测试技术的学习总结)

在用等价类测试方法时,在测试无效等价类的结果和预期结果不一致,其原因是在设计程序时没有考虑无效等价类的这些测试用例的输出语句,黑盒测试技术是我们常使用的软件测试的方法,在测试中,我们需要将边界值测试,等价类测试,决策表测试,基于场景测试联合使用。任何一款软件都不可能做到完全测试,所以我们需要做的就是将黑盒测试中的方法尽可能结合使用,争取让软件少一些 bug。

第二篇:黑盒测试心得

“黑盒”测“外”不测“内”

“黑盒”测的是功能

黑盒测试也称功能测试或数据驱动测试。它在已知产品应具有的功能的条件下,通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打 开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否 能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。

“黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使 用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。

“黑盒”的两种基本方法

黑盒测试有两种基本方法,即通过测试和失败测试。

在进行通过测试时,实际上是确认软件能做什么,而不会去考验其能力如何。软件测试员只运用最简单,最直观的测试案例。

在设计和执行测试案例时,总是先要进行通过测试。在进行破坏性试验之前,看一看软件基本功能是否能够实现。这一点很重要,否则在正常使用软件时就会奇怪地发现,为什么会有那么多的软件缺陷出现?

在确信了软件正确运行之后,就可以采取各种手段通过搞“垮”软件来找出缺陷。纯粹为了破坏软件而设计和执行的测试案例,被称为失败测试或迫使出错测试。

黑盒测试的设计方法

黑盒测试是以用户的观点,从输入数据与输出数据的对应关系出发进行测试的,它不涉及到程序的内部结构。很明显,如果外部特性本身有问题或规格说明的规 定有误,用黑盒测试方法是发现不了的。黑盒测试法注重于测试软件的功能需求,主要试图发现几类错误:功能不对或遗漏、界面错误、数据结构或外部数据库访问 错误、性能错误、初始化和终止错误。

具体的黑盒测试方法包括等价类划分、因果图、正交实验设计法、边值分析、判定表驱动法、功能测试等。在使用时,自然要针对开发项目的特点对方法加以适当的选择。

◆ 等价类划分

等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例可以不用考虑程序的内部结构,只以对程序的要求和说明,即需求规格说明书为依据,仔细分析和推敲说明书的各项需求,特别是功能需求,把说明中对输入的要求和输出的要求区别开来并加以分解。

由于穷举测试的数量太大,以致于无法实际完成,促使我们在大量的可能数据中选取其中的一部分作为测试用例。例如,在不了解等价分配技术的前提下,测试 了1+1、1+2、1+3和1+4之后,还有必要测试1+5和1+6吗?能否放心地认为它们正确吗?那么1+999…(可以

输入的最大数值)呢?这个测试 用例是否与其他用例不同?是否属于另外一种类别?另外一个等价区间?这是软件测试员必须考虑到的问题。

等价类别或者等价区间是指测试相同目标或者暴露相同软件缺陷的一组测试案例。1+999…和1+13有什么区别呢?至于1+13,就像一个普通的加法,与1+5或者1+392没有什么两样,而1+999…则属于邻界的极端情况。假 如输入最大允许数值,然后加1,就会出现问题——也许就是软件的缺陷。这个极端案例属于一个单独的区间,与常规数字的普通区间不同。

等价类划分的办法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据当作测试用例。每一类的代表性数据在测试中的作用等价于这一类 中的其他值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能出现同样的错误。使用这一方法设计测试用例,首先必须在分析需求规 格说明的基础上划分等价类,列出等价类表。

在考虑等价类划分时,先从程序的功能说明中找出每个输入条件,然后为每个输入条件划分两个或更多个等价类。等价类可分两种情况:有效等价类和无效等价 类。有效等价类是指对程序的规格说明是有意义的、合理的输人数据所构成的集合;无效等价类是指对程序的规格说明是不合理的或无意义的输人数据所构成的集 合。

◆ 边界值分析

软件测试常用的一个方法是把测试工作按同样的形式划分。对数据进行软件测试,就是检查用户输入的信息、返回结果以及中间计算结果是否正确。

即使是最简单的程序,要处理的数据也可能数量极大。还记得在计算器上简单加法的全部可能性吗?再想一想字处理程序、导航系统和证券交易程序。使这些数 据得以测试的技巧(如果称得上的话)是,根据下列主要原则进行等价分配,以合理的方式减少测试案列:边界条件、次边界条件、空值和无效数据。

边界值分析(Boundary Value Analysis,BVA)是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。实践证明,在设计测试用 例时,对边界附近的处理必须给予足够的重视,为检验边界附近的处理专门设计测试用例,常常可以取得良好的测试效果。BVA不仅重视输人条件边界,而且也从 输出域导出测试用例。

第三篇:黑盒测试的测试流程简单介绍

黑盒测试的测试流程简单介绍

话说我们一直在做黑盒自动化测试,那我们究竟处于测试中的哪个位置呢?

其实我们更多的是在执行测试提交报告和发现的软件Error,测试用例是如何设计的,为什么要这样设计又有多少人想过呢?黑盒测试中的测试用例设计的简单方法又有多少了解呢?我们常做的测试中哪些地方用到了例如等价类划分法?

下面仅仅对黑盒测试的简单的测试流程进行下说明关于黑盒测试的其他内容会在以后的帖子中说明。

首先来了解两个名词:

Statement of Work(SOW)软件使用说明书

Software Requirement Specification(SRS)软件需求规格说明书

1.需求分析阶段:对业务的学习,分析需求点。

2.测试计划阶段:测试组长就要根据SOW开始编写《测试计划》,其中包括人员,软件硬件资源,测试点,集成顺序,进度安排和风险识别等内容。

3.测试设计阶段:测试方案一般由对需求很熟的高资深的测试工程师设计,测试方案要求根据《SRS》上的每个需求点设计出包括需求点简介,测试思路和详细测试方法三部分的方案。《测试方案》编写完成后也需要进行评审。

4.测试方案阶段:主要是对测试用例和规程的设计。测试用例是根据《测试方案》来编写的,通过《测试方案》阶段,测试人员对整个系统需求有了详细的理解。这时开始编写用例才能保证用例的可执行和对需求的覆盖。测试用例需要包括测试项,用例级别,预置条件,操作步骤和预期结果。其中操作步骤和预期结果需要编写详细和明确。测试用例应该覆盖测试方案,而测试方案又覆盖了测试需求点,这样才能保证客户需求不遗漏。同样,测试用例也需要评审。

5.测试执行阶段:执行测试用例,及时提交Error和测试报告等相关文档。

第四篇:软件测试技术-实验报告内容格式

课程名称:《软件测试技术》

实验名称:《使用LoadRunner 进行性能测试》

实验目标:

1、掌握LR的测试过程;

2、掌握LR中 Visual User Generator(以下简称VuGen)、Controller和Analysis三个组件的具体使用。

实验要求:

采用LR 自带的HP WEBTours应用程序,进行性能测试。

实验过程:

1、录制LR 自带的HP WEBTours应用程序脚本,录制内容包括自动进入到WEB TOURS 网站,进行登录(已经注册成功),登录成功后,再定一张票,定票后,输入信用卡信息,然后退出登录,完成后,点击停止录制;(具体过程自己描述)

2、生成脚本;

(具体过程自己描述)

3、回放脚本;

(具体过程自己描述)

4、插入事件,分别在登录前和登录成功后、订票前和订票成功后四个位置插入一个事件;

(具体过程自己描述)

5、启动Controller,配置场景,选择场景类型为Goal—Oriented Scenario;(具体过程自己描述)

6、生成分析报告。

(具体过程自己描述)

参照《LoadRunner结果分析说明》文档进行分析,了解系统瓶颈在什么地方,需要改进,实验完成。

实验心得:

要求不得少于200字。

第五篇:黑盒测试的五种典型方法

黑盒测试(black—box testing)又称功能测试、数据驱动测试或基于规范的测试。用这种方法进行测试时,被测程序被当作看不见内部的黑盒。在完全不考虑程序内部结构和内部特性的情况下,测试者仅依据程序功能的需求规范考虑确定测试用例和推断测试结果的正确性。因此黑盒测试是从用户观点出发的测试,黑盒测试直观的想法就是既然程序被规定做某些事,那我们就看看它是不是在任何情况下都做的对。完整的“任何情况”是无法验证的,为此黑盒测试也有一套产生测试用例的方法,以产生有限的测试用例而覆盖足够多的“任何情况”。由于黑盒测试不需要了解程序内部结构,所以许多高层的测试如确认测试、系统测试、验收测试都采用黑盒测试。

黑盒测试首先是程序通常的功能性测试。要求:

每个软件特性必须被一个测试用例或一个被认可的异常所覆盖;用数据类型和数据值的最小集测试;用一系列真实的数据类型和数据值运行,测试超负荷、饱和及其他“最坏情况”的结果;用假想的数据类型和数据值运行,测试排斥不规则输入的能力;对影响性能的关键模块,如基本算法、应测试单元性能(包括精度、时间、容量等)。

不仅要考核“程序是否做了该做的?”还要考察“程序是否没做不该做的2”同时还要考察程序在其他一些情况下是否正常。这些情况包括数据类型和数据值的异常等等。下述几种方法:(a)等价类划分,(b)因果图方法,(c)边值分析法,(d)猜错法,(e)随机数法,就是从更广泛的角度来进行黑盒测试。每一个方法都力图能涵盖更多的“任何情况”,但又各有长处,综合使用这些方法,会得到一个较好的测试用例集。

1.等价类划分

等价类划分是一种典型的黑盒测试方法。等价类是指某个输入域的集合。它表示对揭露程序中的错误来说,集合中的每个输入条件是等效的。因此我们只要在一个集合中选取一个测试数据即可。等价类划分的办法是把程序的输入域划分成若干等价类,然后从每个部分中选取少数代表性数据当作测试用例。这样就可使用少数测试用例检验程序在一大类情况下的反映。

在考虑等价类时,应该注意区别以下两种不同的情况:

有效等价类:有效等价类指的是对程序的规范是有意义的、合理的输入数据所构成的集合。在具体问题中,有效等价类可以是一个,也可以是多个。无效等价类:无效等价类指对程序的规范是不合理的或无意义的输入数据所构成的集合。对于具体的问题,无效等价类至少应有一个,也可能有多个。

确定等价类有以下几条原则:

如果输入条件规定了取值范围或值的个数,则可确定一个有效等价类和两个无效等价类。例如,程序的规范中提到的输入条包括“„„项数可以从1到999„„”,则可取有效等价类为“l考项数<999”,无效等价类为“项数<l,及“项数>999”。

输入条件规定了输入值的集合,或是规定了“必须如何”的条件,则可确定一个有效等价类和一个无效等价类。如某程序涉及标识符,其输入条件规定“标识符应以字母开头„„”则“以字母开头者”作为有效等价类,“以非字母开头”作为无效等价类。

如果我们确知,已划分的等价类中各元素在程序中的处理方式是不同的,则应将此等价类进一步划分成更小等价类。输入条件 有效等价类 无效等价类

。。。

。。。。。。

。。。。。。

。。。

根据已列出的等价类表,按以下步骤确定测试用例:

为每个等价类规定一个唯一的编号;

设计一个测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。重复这一步,最后使得所有有效等价类均被测试用例所覆盖;

设计一个新的测试用例,使其只覆盖一个无效等价类。重复这一步,使所有无效等价类均被覆盖。这里强调每次只覆盖一个无效等价类。这是因为一个测试用例中如果含有多个缺陷,有可能在测试中只发现其中的一个,另一些被忽视。等价类划分法能够全面、系统地考虑黑盒测试的测试用例设计问题,但是没有注意选用一些“高效的”、“有针对性的”测试用例。后面介绍的边值分析法可以弥补这一缺点。

2.因果图

等价类划分法并没有考虑到输入情况的各种组合。这样虽然各个输入条件单独可能出错的情况已经看到了,但多个输入情况组合起来可能出错的情况却被忽略。采用因果图方法能帮助我们按一定步骤选择一组高效的测试用例,同时,还能为我们指出程序规范的描述中存在什么问题。

利用因果图导出测试用例需要经过以下几个步骤:

分析程序规范的描述中哪些是原因,哪些是结果。原因常常是输入条件或是输入条件的等价类。结果是输出条件。

分析程序规范的描述中语义的内容,并将其表示成连接各个原因与各个结果的“因果图”。

由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,在因果图上使用持殊的符号标明约束条件。把因果图转换成判定表。把判定表的每一列写成一个测试用例。

3.边值分析法

边值分析法是列出单元功能、输入、状态及控制的合法边界值和非法边界值,设计测试用例,包含全部边界值的方法。典型地包括IF语句中的判别值,定义域、值域边界,空或畸形输入,末受控状态等。边值分析法不是一类找一个例子的方法,而是以边界情况的处理作为主要目标专门设计测试用例的方法。另外,边值分析不仅考查输入的边值,也要考虑输出的边值。这是从人们的经验得出的一种有效方法。人们发现许多软件错误只是在下标、数据结构和标量值的边界值及其上、下出现,运行这个区域的测试用例发现错误的概率很高。

用边值分析法设计测试用例时,有以下几条原则:

如果输入条件规定了取值范围,或是规定了值的个数,则应以该范围的边界内及刚刚超出范围的边界外的值,或是分别对最大、最小及稍小于最小、稍大于最大个数作为测试用例。如有规范“某文件可包含l至255”个记录„„“,则测试用例可选1和255及0和256等。

针对规范的每个输出条件使用原则〔a〕。如果程序规范中提到的输入或输出域是个有序的集合(如顺序文件、表格等)就应注意选取有序集的第一个和最后一个元素作为测试用例。

分析规范,尽可能找出可能的边界条件。一个典型的边值分析例子是三角形分类程序。选取a,b,c构成三角形三边,“任意两边之和大于第三边”为边界条件。边值分析相等价类划分侧重不同,对等价类划分是一个补充。如上述三角形问题,选取a=3,b=4,c=5,a=2,b=4,c=7则覆盖有效和无效等价类。如果能在等价类划分中注入边值分析的思想。在每个等价类中不只选取一个覆盖用例,而是进而选取该等价类的边界值等价类划分法将更有效,最后可以用边值分析法再补充一些测试用例。

4.猜错法

猜错法在很大程度上是凭经验进行的,是凭人们对过去所作的测试工作结果的分析,对所揭示的缺陷的规律性作直觉的推测来发现缺陷的。

一个采用两分法的检索程序,典型地可以列出下面几种测试情况:

被检索的表只有一项或为空表;

表的项数恰好是2的幂次;

表的项数比2的幂次多1等。

猜错法充分发挥人的经验,在一个测试小组中集思广益,方便实用,特别在软件测试基础较差的情况下,很好地组织测试小组(也可以有外来人员)进行错误猜测,是有效的测试方法。

5.随机数法

即测试用例的参数是随机数。它可以自动生成,因此自动化程度高。使用大量随机测试用例测试通过的程序会提高用户对程序的信心。但其关键在于随机数的规律是否符合使用实际。

相关内容

热门阅读

最新更新

随机推荐