黑盒测试举例

合集下载

黑盒测试用例设计实例

黑盒测试用例设计实例

黑盒测试用例设计实例引言黑盒测试是一种软件测试的方法,它从用户的角度出发,不考虑内部的实现细节,仅仅根据软件的输入和输出来进行测试。

黑盒测试用例的设计是黑盒测试的关键环节之一,本文将通过一个实例来详细介绍如何进行黑盒测试用例的设计。

任务概述本文将以一个电子商务网站为例,以说明如何进行黑盒测试用例的设计。

电子商务网站通常包含用户注册、商品浏览、购物车管理、下单支付等功能模块。

我们将分别设计这些功能模块的黑盒测试用例。

电子商务网站功能模块1.用户注册2.商品浏览3.购物车管理4.下单支付用户注册功能模块测试输入验证测试1.输入有效的用户名、密码、邮箱和手机号,验证是否成功注册。

2.输入无效的用户名,如为空、包含特殊字符或长度超过限制,验证是否提示相应的错误信息。

3.输入无效的密码,如长度过短、仅由数字组成,验证是否提示相应的错误信息。

4.输入无效的邮箱,如格式不符合要求,验证是否提示相应的错误信息。

5.输入无效的手机号,如格式不符合要求,验证是否提示相应的错误信息。

功能测试1.验证成功注册后,是否能够正常登录。

2.验证注册后的用户信息在数据库中是否正确保存。

3.验证重复注册同一用户名是否被拒绝。

商品浏览功能模块测试页面加载测试1.验证首页是否正确加载,包括顶部导航栏、商品分类、轮播图等元素是否显示正常。

2.验证商品详情页是否正确加载,包括商品名称、价格、图片、评价等元素是否显示正常。

搜索功能测试1.在搜索框中输入关键字,验证是否能够正确展示相关的商品结果。

2.输入不存在的关键字,验证是否能够提示“未找到相关商品”的信息。

列表排序测试1.验证按价格升序排序时,商品列表是否按价格由低到高的顺序排列。

2.验证按价格降序排序时,商品列表是否按价格由高到低的顺序排列。

分类过滤测试1.选择一个商品分类,验证筛选后的商品列表是否只显示该分类的商品。

2.选择多个商品分类,验证筛选后的商品列表是否包含这些分类的商品。

黑盒测试经典例题(精选8篇)

黑盒测试经典例题(精选8篇)

黑盒测试经典例题(精选8篇)【篇一】黑盒测试经典例题实验一黑盒测试(一)实验目的1.掌握用边界值方法设计测试用例和执行测试的过程;2.掌握用等价划分方法设计测试用例和执行测试的过程;3.掌握用决策表方法设计测试用例和执行测试的过程。

(二)实验内容测试“Ne某tDate”函数。

Ne某tDate返回输入日期后面的那个日期。

变量年、月、日都具有整数值,且满足如下条件:C1:1912≤年份≤2050C2:1≤月份≤12C3:1≤日期≤31(三)实验步骤用熟悉的语言(如C语言)编写实现该函数的功能,并用如下方法设计测试用例,进行黑盒测试。

参考源代码:#includeintne某tDate(intyear,intmonth,intday);voidmain(){/intyear,month,day;ne某tDate(2051,12,30);}intne某tDate(intyear,intmonth,intday) {/某如果还有明天,返回1;如果输入不合法,返回-1;某/witch(month){cae1:cae3:cae5:cae7:cae8:cae10:if(day==31){day=1;month=month+1;}eleday=day+1;break;cae4:cae6:cae9:cae11: if(day==30){day=1;month=month+1;}eleday=day+1;break;cae12:if(day==31){day=1;month=1;year=year+1;if(year==2022)printf("2022iover");}eleif(day=1912&&year12||month31||day【篇二】黑盒测试经典例题常用黑盒测试的方法黑盒测试(Black-bo某Teting,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。

利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。

黑盒测试方法举例说明

黑盒测试方法举例说明

黑盒测试方法举例说明黑盒测试是一种软件测试方法,测试人员不需要了解内部代码或程序逻辑,而是专注于测试输入和输出的正确性。

本文将介绍几种常见的黑盒测试方法,并通过具体的案例来说明其应用。

等价类划分等价类划分是一种常用的黑盒测试方法,将输入数据划分成有效等价类和无效等价类,只需测试每个等价类的一个代表值即可。

例如,对于一个要求输入1到100之间的整数的程序,我们可以选择一个小于1的数、一个在1和100之间的数和一个大于100的数进行测试。

边界值分析边界值分析是在等价类划分的基础上,对边界数值进行测试的一种方法。

通常情况下,程序在处理边界值时容易出现错误。

以编辑器的字数统计功能为例,如果规定最多输入1000个字,我们会测试999个字和1000个字的情况,以确保程序能够正确统计。

因果图法因果图法是一种通过绘制因果图来描绘可能的输入和输出关系的黑盒测试方法。

以一个购物网站为例,我们可以绘制用户点击购买按钮后的流程图,包括选择商品、填写地址、付款等步骤。

通过因果图法,我们可以发现潜在的问题,并设计相应的测试用例。

决策表驱动测试决策表驱动测试是一种根据不同条件的组合来设计测试用例的黑盒测试方法。

以一个银行取款程序为例,我们可以根据取款金额、账户余额和取款时间等条件,设计不同的测试用例。

这样能够覆盖不同的可能情况,提高测试的全面性。

边界盒测试边界盒测试是一种结合边界值分析和等价类划分的测试方法,旨在测试系统的边界条件。

以一个电子邮箱地址输入框为例,我们可以测试最短长度、最长长度和超过最长长度的情况,以确保系统在处理边界条件时能够正确响应。

以上是几种常见的黑盒测试方法,每种方法都有其适用的场景和优势。

在实际测试过程中,可以根据具体的需求选择合适的方法或组合多种方法进行测试,以确保软件质量和稳定性。

黑盒测试虽然不涉及具体代码实现,但却是保证软件功能正确性和稳定性的重要手段之一。

黑盒测试具体例子

黑盒测试具体例子

黑盒测试具体例子黑盒测试是一种软件测试方法,测试人员主要关注软件的输入与输出,而不考虑内部结构或代码实现细节。

在黑盒测试中,测试人员通过分析需求规格说明书等文档,设计测试用例来验证软件功能的正确性。

下面将介绍几个黑盒测试的具体例子。

1. 登录功能测试假设我们要测试一个网站的登录功能,我们可以设计以下测试用例来进行黑盒测试:•测试用例1:输入正确的用户名和密码,验证是否能成功登录;•测试用例2:输入错误的用户名,验证是否提示“用户名不存在”的错误信息;•测试用例3:输入错误的密码,验证是否提示“密码错误”的错误信息;•测试用例4:输入超长的用户名或密码,验证系统是否做了长度限制处理;•测试用例5:在登录界面不输入任何信息,验证系统是否能识别为空的输入并给出相应提示。

通过以上测试用例可以验证登录功能在不同情况下的表现,保证其在各种情况下都能正常运作。

2. 购物车功能测试假设我们要测试一个电商网站的购物车功能,我们可以设计以下测试用例进行黑盒测试:•测试用例1:向购物车添加商品,验证商品数量是否正确增加;•测试用例2:修改购物车中商品的数量,验证价格是否正确计算;•测试用例3:删除购物车中的商品,验证删除后购物车是否为空;•测试用例4:尝试向购物车中添加数量超过库存的商品,验证系统是否给出相应提示;•测试用例5:尝试在未登录状态下进行购物车操作,验证系统是否要求用户先登录。

通过以上测试用例可以验证购物车功能在各种操作下的正确性,避免在实际使用中出现问题。

3. 搜索功能测试假设我们要测试一个搜索引擎的搜索功能,我们可以设计以下测试用例进行黑盒测试:•测试用例1:输入关键词进行搜索,验证搜索结果的相关性和准确性;•测试用例2:输入特殊字符进行搜索,验证系统是否能正确处理这些特殊字符;•测试用例3:输入不存在的关键词进行搜索,验证系统是否能给出“无结果”提示;•测试用例4:在搜索结果页面尝试使用筛选功能,验证筛选条件是否有效;•测试用例5:在搜索过程中断网重连,验证系统是否能正确处理这种情况。

黑盒测试案例

黑盒测试案例

黑盒测试案例黑盒测试是一种测试方法,旨在检验软件或系统的功能性,而不考虑其内部的实现细节。

下面是一个黑盒测试的案例,以展示如何设计和执行一个黑盒测试。

案例:网上购物系统1. 注册功能测试测试目标:验证用户能够成功注册一个新账户。

测试步骤:a. 打开网上购物系统主页。

b. 点击注册按钮。

c. 输入一个有效的用户名、密码和电子邮件地址。

d. 点击提交按钮。

e. 检查系统是否显示注册成功的提示信息。

f. 尝试使用新账户登录系统,检查是否成功登录。

预期结果:系统应该成功注册新账户并允许用户使用该账户登录。

2. 商品搜索功能测试测试目标:验证用户能够成功搜索并找到所需商品。

测试步骤:a. 打开网上购物系统主页。

b. 在搜索框中输入一个商品关键词。

c. 点击搜索按钮。

d. 检查系统是否正确显示与关键词相关的商品列表。

预期结果:系统应该能够根据用户输入的关键词正确显示相关的商品列表。

3. 购物车功能测试测试目标:验证用户能够成功将商品添加到购物车并完成购买。

测试步骤:a. 打开网上购物系统主页。

b. 浏览商品列表,选择一个商品。

c. 点击“加入购物车”按钮。

d. 检查系统是否将商品添加到购物车中。

e. 点击“去结算”按钮。

f. 输入有效的配送地址和支付信息。

g. 点击“提交订单”按钮。

h. 检查系统是否显示订单成功提交的提示信息。

预期结果:系统应该能够正确添加商品到购物车,并在用户完成订单时显示成功提交订单的提示信息。

4. 优惠券功能测试测试目标:验证用户能够成功使用优惠券并享受相应折扣。

测试步骤:a. 打开网上购物系统主页。

b. 选择需要购买的商品并添加到购物车。

c. 输入有效的优惠券编号。

d. 点击“应用优惠券”按钮。

e. 检查系统是否正确计算并显示优惠后的价格。

预期结果:系统应该能够根据用户输入的优惠券编号正确计算并显示折扣后的价格。

5. 支付功能测试测试目标:验证用户能够成功完成支付流程。

测试步骤:a. 打开网上购物系统主页。

软件测试黑盒测试实例

软件测试黑盒测试实例

软件测试黑盒测试实例在软件测试领域中,黑盒测试是一种测试方法,旨在检查软件功能的正确性而不考虑内部结构或代码逻辑。

黑盒测试通过输入某些值,检查输出结果是否符合预期来评估软件系统。

本文将通过一个实例来说明黑盒测试的过程和重要性。

实例介绍假设我们有一个简单的登录系统,其中包含用户名和密码输入框以及登录按钮。

我们的任务是对这个登录系统进行黑盒测试,确保系统在各种情况下都能正确运行。

测试用例设计1.正常登录: 输入正确的用户名和密码,点击登录按钮,预期系统应成功登录。

2.错误的用户名: 输入错误的用户名,正确的密码,点击登录按钮,预期系统应提示用户名错误。

3.错误的密码: 输入正确的用户名,错误的密码,点击登录按钮,预期系统应提示密码错误。

4.空用户名: 不输入用户名,输入正确的密码,点击登录按钮,预期系统应提示用户名不能为空。

5.空密码: 输入正确的用户名,不输入密码,点击登录按钮,预期系统应提示密码不能为空。

测试过程1.针对每个测试用例,创建一个测试计划,包括输入值、预期输出和实际输出。

2.依次执行测试用例,记录实际输出。

3.检查实际输出是否符合预期输出,如果不符合,则说明系统在该情况下存在问题。

4.将测试结果进行归档和整理,编写测试报告。

测试结果经过上述测试用例的执行,我们得出以下结论:•正常登录:系统成功登录。

•错误的用户名:系统正确提示用户名错误。

•错误的密码:系统正确提示密码错误。

•空用户名:系统正确提示用户名不能为空。

•空密码:系统正确提示密码不能为空。

结论通过黑盒测试实例,我们发现系统在各种情况下都表现出良好的功能性和健壮性。

黑盒测试作为软件测试的重要手段之一,能够有效地发现系统的潜在问题,提高软件质量和用户体验。

因此,在软件开发过程中,黑盒测试是必不可少的一环。

黑盒测试和白盒测试区别及测试案例

黑盒测试和白盒测试区别及测试案例

什么是黑盒测试和白盒测试?任何工程产品(注意是任何工程产品)都可以使用以下两种方法之一进行测试。

黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。

白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。

软件的黑盒测试意味着测试要在软件的接口处进行。

这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。

因此黑盒测试又叫功能测试或数据驱动测试。

黑盒测试主要是为了发现以下几类错误:1、是否有不正确或遗漏的功能?2、在接口上,输入是否能正确的接受?能否输出正确的结果?3、是否有数据结构错误或外部信息(例如数据文件)访问错误?4、性能上是否能够满足要求?5、是否有初始化或终止性错误?软件的白盒测试是对软件的过程性细节做细致的检查。

这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。

通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。

因此白盒测试又称为结构测试或逻辑驱动测试。

白盒测试主要是想对程序模块进行如下检查:1、对程序模块的所有独立的执行路径至少测试一遍。

2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。

3、在循环的边界和运行的界限内执行循环体。

4、测试内部数据结构的有效性,等等。

以上事实说明,软件测试有一个致命的缺陷,即测试的不完全、不彻底性。

由于任何程序只能进行少量(相对于穷举的巨大数量而言)的有限的测试,在未发现错误时,不能说明程序中没有错误。

白盒测试白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

白盒测试黑盒测试区别举例

白盒测试黑盒测试区别举例

白盒测试和黑盒测试的区别举例在软件测试领域,白盒测试和黑盒测试是两种常见的测试方法,它们在测试目的、实施方式和适用场景上有着明显的区别。

本文将从具体举例分析白盒测试和黑盒测试的差异,帮助读者更好地理解两者之间的区别。

白盒测试白盒测试又称为结构化测试或逻辑驱动测试,是一种基于程序内部逻辑和结构进行测试的方法。

它侧重于理解代码的内部工作原理和逻辑结构,通过检查程序的代码、路径覆盖率等方面来评估测试质量。

举例来说,假设有一个简单的函数用于计算两个数的和:def add(x, y):result = x + yreturn result在白盒测试中,测试人员会针对上述函数编写测试用例,覆盖不同的路径和边界条件,以保证程序的逻辑正确性。

比如,测试用例可以包括输入两个正数、两个负数、一个正数一个负数等情况。

黑盒测试黑盒测试又称为功能测试或行为驱动测试,是一种基于软件需求和规格说明进行测试的方法。

测试人员不需要了解程序的内部工作原理,而是通过输入输出的观察来评估程序的正确性。

继续以上述加法函数的例子,黑盒测试则关注函数的功能是否符合预期需求。

测试人员会编写测试用例,根据输入和输出的关系来验证函数的正确性,而不考虑函数内部的实现细节。

例如,黑盒测试的测试用例可能包括输入两个正数、两个负数、一个正数一个负数等情况,观察输出结果是否符合预期的加法运算结果。

白盒测试和黑盒测试的区别1.测试对象不同:白盒测试关注程序的内部结构和逻辑,而黑盒测试关注程序的功能和用户需求。

2.测试重点不同:白盒测试侧重于路径覆盖和代码执行逻辑,黑盒测试侧重于功能是否符合需求。

3.测试用例设计方法不同:白盒测试需要了解程序内部结构,设计测试用例以覆盖不同路径和边界条件;黑盒测试则通过需求规格设计测试用例,验证程序的功能是否正确。

4.测试人员角色不同:白盒测试需要有编程和代码理解能力的测试人员,而黑盒测试相对更容易上手,适合非技术人员进行测试。

《软件测试技术》黑盒测试实验

《软件测试技术》黑盒测试实验

《软件测试技术》黑盒测试实验一、实验目的1、能熟练应用黑盒测试技术中的等价类划分法、边界值分析法、因果图法和决策表法进行测试用例设计。

2、对测试用例进行优化设计二、实验环境Windows系统+ Office工具三、实验任务1.电话号码问题2.三角形问题3.工资问题4. 自动售货机问题四、实验步骤1.电话号码问题某城市电话号码由三部分组成,分别是:地区码:空白或四位数字;前缀:非0或1开头的四位数字;后缀:四位数字。

假设被测程序接受符合上述规定的电话号码,拒绝所有不符合规定的电话号码,使用等价类划分方法进行测试用例设计。

表1 电话号码等价类表(除了表头即第一行外,其它都可以修改)表2 电话号码用例表(可以根据实际情况增加行或者删除行)2. 三角形问题输入三个整数:A、B、C,分别作为三角形的三条边的长度,取值范围[1,100],判断三条边构成的三角形是等腰的、等边的、一般三角形或者非三角形。

分别设计标准性边界值分析的测试用例和健壮性边界值分析的测试用例。

(1)标准性边界值测试用例(根据实际情况自行调整表格行数)(2)健壮性边界值测试用例(根据实际情况自行调整表格行数)3.工资问题某软件的一个模块的需求规格说明书中描述:(1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。

(2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。

请绘制出因果图和判定表,并给出相应的测试用例。

原因:C1. 年薪制员工C2. 严重过失中间状态:11. 非年薪制员工12. 过失结果:E1. 扣年终风险金的4%E2. 扣年终风险金的2%E3. 扣当月薪资的8%E4. 扣当月薪资的4%4. 自动售货机问题有一个处理单价为1元5角钱的盒装饮料的自动售货机软件,若投入1元5角硬币,按下“可乐”、“雪碧”或“橙汁”按钮,相应的饮料就送出来。

若投入的是2元硬币,在送出相应的饮料同时退换5角硬币。

请绘制出决策表。

实践:黑盒测试之等价类案例

实践:黑盒测试之等价类案例

456
456
abc&123
abc&123
abc_123
Abc_123
提示密码错误
提示密码错误 提示密码错误
表4-6 测试用例
测试用例
用户名
密码
确认密码
预期输出
TC1 TC2 TC3
TC4
TC5 TC6 TC7 TC8 TC9 TC10
abc_2000 2000-abc
abc_123 123-abc
abc_123 123-abc
注册成功 注册成功
abc
12345678
12345678 提示用户名错误
abcdefghijk123 456
覆盖等价类 (1)(2) (3) (4) (1)(5) (1)(6)
输出信息 输入正确 输入错误 输入错误 输入错误 输入错误
案例:免费邮箱申请
例.在某网站申请免费信箱时,要求用户必须输 入用户名、密码及确认密码,对每一项输入条件 的要求如下:
用户名要求为4位以上,16位以下,使用英文 字母、数字、“-”、“_”,并且首字符必须为字 母或数字;密码要求为6~16位之间,只能使用 英文字母、数字以及“-”、“_”,并且区分大小 写。
第四章 黑盒测试及其实例设计
黑盒测试法是根据被测程序功能来进行测试,所以通常 也称为功能测试。用黑盒测试法设计测试用例,有4 种常用 技术:
等价分类法 边界值分析 错误猜测法 决策表法 因果图法
案例:命名规则
案例:报表处理系统
例:某报表处理系统要求用户输入处理报表 的日期,日期限制在2005年1月至2009年 12月,即系统只能对该段期间内的报表进 行处理,如日期不在此范围内,则显示输 入错误信息。系统日期规定由年、月的6位 数字字符组成,前四位代表年,后两位代 表月。

常用黑盒测试方法四种

常用黑盒测试方法四种

常用黑盒测试方法四种1.等价类划分法等价类划分法是一种黑盒测试方法,通过将输入域分为若干个等价类,从每个等价类中选择最具代表性的数据来设计测试用例。

这种方法可以有效减少测试用例的数量,同时保证覆盖所有可能的情况。

例如,如果一个输入要求在1到100之间的整数,我们可以选择一个小于1的数、一个大于100的数、一个在1到100之间的数等作为等价类的代表值来设计测试用例。

2.边界值分析法边界值分析法是一种常用的黑盒测试方法,其核心思想是在测试用例设计中重点关注输入值的边界情况。

通过测试边界值附近的数据,可以发现很多潜在的程序错误。

例如,假设有一个要求输入1到100之间的整数的功能,那么我们可以设计测试用例输入1和100以及他们的临界值2和99,来检测程序在边界情况下的表现。

3.因果图法因果图法是一种黑盒测试方法,通过绘制因果图来表示系统中不同因素之间的关系,然后根据因果图设计测试用例。

这种方法能够帮助测试人员快速理解系统的复杂逻辑和交互关系,并设计出全面有效的测试用例。

例如,当测试一个电商系统的下单功能时,我们可以绘制因果图标明用户添加商品到购物车、选择支付方式和确认订单等操作之间的因果关系,然后设计针对不同路径的测试用例。

4.状态迁移法状态迁移法是一种常用的黑盒测试方法,主要用于测试基于状态的系统或功能。

通过分析系统在不同状态下的行为,设计测试用例来覆盖系统可能的状态转移路径,以验证系统在不同状态下的正确性。

例如,测试一个简单的登录功能时,可以设计测试用例来覆盖用户登录成功、登录失败等不同状态下的情况,检验系统在状态转移时的表现。

以上是四种常用的黑盒测试方法,每种方法都有其独特的优势和适用场景,在实际测试工作中可以根据具体情况选择合适的方法来设计测试用例,提高测试效率和覆盖率。

黑盒测试是软件测试的重要手段之一,通过有效的测试方法和用例设计可以帮助发现潜在的问题,保证软件质量。

黑盒测试设计用例的方法

黑盒测试设计用例的方法

黑盒测试设计用例的方法
1. 等价类划分法呀,这就像把东西按类别分堆一样。

比如说测试一个登录功能,那有效用户名和无效用户名就是不同的类别,咱得分别设计用例去测试呀!
2. 边界值分析法,嘿,这可太重要啦!就好比走在悬崖边,那边界的地方就是最需要关注的呀。

像设置密码要求 6 到 12 位,那 5 位、6 位、12 位、13 位可都得好好试试呢!
3. 错误推测法,这就像是我们去猜猜可能会出啥错。

比如一个网页加载,那会不会网络不好就卡住啦?我们就得针对这种情况设计用例呀!
4. 因果图法,哇哦,这就如同顺藤摸瓜一样呢。

比如说某个操作会导致一系列结果,咱就得把这些关系搞清楚,设计出合适的用例。

就像按开关会亮灯,那要是开关坏了呢?
5. 正交试验法,这个有点厉害哦,就像把不同的因素排列组合一下。

比如一个设置有多个选项,那不同的组合都得试试,看有没有问题呀!
6. 功能图法,这就好像是给流程画个地图呀。

从一个功能到另一个功能,中间会有哪些路径,都得用用例覆盖到呢,可不是得认真对待嘛!
7. 场景法,哎呀呀,这就是在脑子里模拟各种场景呢。

比如购物流程,从挑选商品到付款,整个场景都得设计用例好好测试呀!
8. 判定表驱动法,嘿呀,这就跟做个表格选答案似的。

不同的条件对应不同的结果,可不能搞混啦,这可是很关键的呢!
9. 状态迁移法,哇塞,这就好像看着事物的状态变化一样。

比如一个文件的状态从新建到保存到打开,每个变化都得检测到位呀!
我觉得这些方法都超级实用呀,掌握了它们,黑盒测试就能做得更棒啦!。

黑盒测试技术几种方法例子

黑盒测试技术几种方法例子

黑盒测试技术几种方法例子
1. 等价类划分
等价类划分是一种常用的黑盒测试方法。

在等价类划分中,测试用例会被划分
为几个等价的类别,然后只需从每个等价类中选择一个代表性的测试用例进行测试。

这样可以有效地减少测试用例的数量,同时覆盖各种情况。

例如,对于一个要求输入 1 到 100 之间整数的文本框进行测试,我们可以选择一个小于 1 的数、一个在 1 到 100 之间的数以及一个大于 100 的数作为代表性测试用例。

2. 边界值分析
边界值分析是一种基于输入域的黑盒测试方法。

在这种方法中,测试用例主要
集中在输入域的边界值上进行测试。

通过测试边界值,可以发现很多潜在的错误。

以一个要求输入 1 到 10 之间整数的程序为例,我们会测试 1 和 10 这两个边界值
以及它们的前后值,即 0、2、9、11,来保证程序在边界值处的处理正确性。

3. 因果图法
因果图法是一种将输入和输出之间的关系可视化的黑盒测试方法。

在因果图法中,通过绘制因果图,可以清晰地展现输入与输出之间的关系,帮助测试人员更好地设计和选择测试用例。

例如,对于一个银行转账系统进行测试,我们可以绘制一个因果图,将转账金额、付款账户、收款账户等因素都纳入考虑,然后根据因果图确定测试用例。

通过以上几种黑盒测试方法的例子,我们可以看到不同的方法适用于不同的场景。

测试人员可以根据具体需求和系统特点选择合适的测试方法,从而提高测试效率和覆盖率。

黑盒测试技术的不断发展将为软件质量的提升提供重要保障。

黑盒测试及其测试实例

黑盒测试及其测试实例

边界值分析法
采用边界值分析法来选择测试用例,可使
得被测程序能在边界值及其附近运行,从而更 有效地暴露出程序中潜藏的错误。
边界值分析法

边界值分析法是对等价类划分方法的补充。


人们从长期的测试工作经验得知,大量的错误是发生 在输入或输出范围的边界上,而不是在输入范围的内 部。因此针对各种边界情况设计测试用例,可以查出 更多的错误。 边界值分析的基本思想是把测试的重点放在各个等价 类的边界上,使用在最小值、略小于最小值、略高于 最小值、正常值、最大值、略低于最大值和略超过最 大值处的值做为测试数据,并据此设计出相应的测试 用例。
有效等价类(合理等价类)
无效等价类(不合理等价类)
划分等价类的规则 (5个)
(1)如果输入条件规定了取值范围,可定义一个有效等价 类和两个无效等价类。 例1.1: 输入值是学生成绩,范围是0~100。
0
100 有效 等价类 0≤成绩≤100 无效等价类
无效等价类
成绩<0
成绩>100
(2) 如果输入条件规定了输入值的集合,或者是规定 了“必须如何”的条件,这时可确立一个有效等价 类和一个无效等价类。
常见等价类划分测试形式

针对是否对无效数据进行测试,可以将等价类测 试分为 标准等价类测试和健壮等价类测试。 标准等价类测试——不考虑无效数据值,测试用 例使用每个等价类中的一个值。 健壮等价类测试——主要的出发点是考虑了无效 等价类。对有效输入,测试用例从每个有效等价 类中取一个值; 对无效输入,一个测试用例有一 个无效值,其他值均取有效值。
分析如下: 分析程序的规格说明,列出等价类表(包括有效等价类 和无效等价类),如表4-5所示。

黑盒测试和白盒测试区别及测试案例

黑盒测试和白盒测试区别及测试案例

黑盒测试和白盒测试区别及测试案例黑盒测试和白盒测试是软件测试领域常用的两种测试方法。

黑盒测试是在不考虑内部结构和实现细节的情况下对软件系统进行测试,主要关注于输入和输出之间的关系,以及对软件功能是否符合需求进行验证。

而白盒测试则是考虑软件系统的内部结构和实现细节,主要关注于对软件逻辑的覆盖程度和正确性进行验证。

下面将分别从定义、特点、测试目的、测试方法和测试案例四个方面详细介绍黑盒测试和白盒测试的区别及测试案例。

一、定义:1.黑盒测试:黑盒测试是一种基于测试对象功能而不考虑其内部结构和实现细节的测试方法。

黑盒测试将软件系统视为一个黑箱子,只通过输入和输出来判断软件系统的正确性。

2.白盒测试:白盒测试是一种基于测试对象内部结构和实现细节的测试方法。

白盒测试需要了解软件系统的内部逻辑,通过覆盖关键路径和逻辑,验证软件的正确性。

二、特点:1.黑盒测试:黑盒测试关注的是软件系统的外部功能,不需要了解软件内部的具体实现。

测试人员不需要了解软件的内部结构和代码逻辑,只需要根据需求文档进行测试。

2.白盒测试:白盒测试关注的是软件系统的内部结构和实现细节。

测试人员需要了解软件的内部逻辑,包括代码覆盖、逻辑覆盖等方面。

三、测试目的:1.黑盒测试:黑盒测试的目的是验证软件系统的功能是否符合需求。

测试人员通过输入不同的数据,验证软件系统的输出是否符合预期结果,以此来发现软件的功能缺陷。

2.白盒测试:白盒测试的目的是验证软件系统的逻辑是否正确、结构是否合理。

通过了解软件的代码和内部逻辑,测试人员可以选择性地设计测试用例,覆盖关键路径和逻辑进行验证。

四、测试方法:1.黑盒测试:黑盒测试常用的方法有等价类划分法、边界值分析法、因果图、决策表等。

通过这些方法可以设计出有效的测试用例,覆盖软件系统的功能并发现潜在的缺陷。

2.白盒测试:白盒测试常用的方法有语句覆盖、判定覆盖、条件覆盖、路径覆盖、循环覆盖等。

通过这些方法可以设计出测试用例,覆盖软件系统的关键路径和逻辑进行验证。

黑盒测试和白盒测试举例

黑盒测试和白盒测试举例

黑盒测试和白盒测试举例在软件测试领域,黑盒测试和白盒测试是两种常见的测试方法,它们分别通过不同的方式来检验软件的质量和功能。

在本文中,我们将介绍黑盒测试和白盒测试的概念,并通过具体的例子来说明它们的应用。

黑盒测试黑盒测试是一种测试方法,测试人员不需要了解软件内部的实现细节,而是将软件视为一个黑盒子,在不知道内部运作的情况下,只关注输入和输出的结果。

黑盒测试主要关注软件功能是否符合需求和规格。

下面是一个关于登录功能的黑盒测试例子:登录功能黑盒测试案例测试目标验证用户可以成功登录系统,并且登录后能够正常访问主页。

测试步骤1.输入正确的用户名和密码,点击登录按钮。

2.输入错误的用户名和密码,点击登录按钮。

3.留空用户名或密码,点击登录按钮。

4.使用不合法字符作为用户名或密码,点击登录按钮。

5.在登录成功后,尝试访问主页的各个功能,并验证功能是否正常。

白盒测试白盒测试是一种测试方法,测试人员需要了解软件内部的实现细节,包括代码结构、逻辑和数据流等信息。

白盒测试主要关注软件的内部逻辑是否正确。

下面是一个关于排序算法的白盒测试例子:排序算法白盒测试案例测试目标验证排序算法在不同大小数据集上的正确性和效率。

测试步骤1.对于空数据集,验证排序后的结果是否为空。

2.对于只有一个元素的数据集,验证排序后的结果是否为本身。

3.对于已排序的数据集,验证排序后的结果是否保持不变。

4.对于随机生成的数据集,验证排序后的结果是否符合排序算法的要求。

5.对于大规模数据集,验证排序算法的时间复杂度和空间复杂度。

通过以上例子,我们可以看到黑盒测试和白盒测试在测试对象、测试方法和测试目的上有所不同,通过结合两种方法的应用,可以更全面地评估软件的质量和功能。

希望读者通过本文对黑盒测试和白盒测试有了更深入的理解,能够在实际测试工作中灵活运用两种方法,提高测试效率和质量。

黑盒测试实例(因果图和场景测试)

黑盒测试实例(因果图和场景测试)

题目一:有一个处理单价为5角钱饮料的自动售货机软件,对其采用因果图方法设计测试用例。

该自动售货机软件规格说明中的要点如下:1)若售货机没有零钱找,则一个显示“零钱找完”的红灯亮,以提示顾客在此情况下不要投入1元钱,否则此红灯不亮。

2)顾客投入5角硬币后,按下“橙汁”或“啤酒”按钮,则相应的饮料被送出。

3)顾客投入1元硬币并按下“橙汁”或“啤酒”按钮后,若售货机没有零钱找,则显示“零钱找完”的红灯亮,1元硬币被推出,且无饮料送出;若有零钱找,则5角硬币被退出且饮料送出。

解:1) 分析这一段说明,列出原因和结果原因:1.售货机有零钱找2.投入1元硬币3.投入5角硬币4.押下橙汁按钮5.押下啤酒按钮结果:21.售货机〖零钱找完〗灯亮22.退还1元硬币23.退还5角硬币24.送出橙汁饮料25.送出啤酒饮料2) 画出因果图,如图所示。

所有原因结点列在左边,所有结果结点列在右边。

建立中间结点,表示处理的中间状态。

中间结点:11. 投入1元硬币且押下饮料按钮12. 押下〖橙汁〗或〖啤酒〗的按钮13. 应当找5角零钱并且售货机有零钱找14. 钱已付清3) 转换成判定表:4) 在判定表中,阴影部分表示因违反约束条件的不可能出现的情况,删去。

第16列与第32列因什么动作也没做,也删去。

最后可根据剩下的16列作为确定测试用例的依据。

题目二:有一个在线购物的实例,用户进入一个在线购物网站进行购物,选购物品后,进行在线购买,这时需要使用帐号登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。

对其采用场景法设计测试用例。

图:基本流和备选流解:1)在线购物的实例的基本流和备选流:2)根据基本流和备选流来确定场景设计:3)用例设计下面显示了一种通用格式,其中各行代表各个测试用例,而各列则代表测试用例的信息。

本例中,对于每个测试用例,存在一个测试用例ID、条件(或说明)、测试用例中涉及的所有数据元素(作为输入或已经存在于数据库中)以及预期结果。

黑盒测试方法实例

黑盒测试方法实例

黑盒测试方法实例黑盒测试方法实例分析一:三角形问题(等价类划分法)例:输入三个整数为三角形的三条边的长度值,程序打印输出这个三角形为不等边的,等腰的,或是等边三角形。

分析:设三边分别为A,B,C,如能构成三角形的三边,须:●A>O,B>0,C>0,且A+B>C,B+C>A,A+C>B;●如是等腰三角形,则要判断A=B||A=C;●如是等边三角形,须判断是否A=B,且B=C,且A=C;由此可得三角形等价类设计表:设计测试用例,输入顺序为A,B,C二:找零钱最佳组合(边界值分析法)例:假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内(P),求找给顾客最少货币个(张)数?(货币面值50元(N50),10元(N10),5元(N5),1元(N1)四种);1:分析输入的情形R:商店货品价格(R=<100且R为整数)P:顾客付款金额(0<p<100)< p="">●R > 100 (无效输出)(1)●R <= 0 (无效输出)(2)(1)(2)为R的无效输入●P > 100(多付)(无效输出)(3)●0 < R < = 100P < R (少给)(无效输出)(4)(3)(4)为P的无效输入●R<= P <= 100 (5)0 < R < = 100 (6)(5)(6)同时满足,交易才能进行2:分析输出情形设PR=P-R(即PR为找给顾客的余额)●N50 N50 = 1 (PR>=50)(7)N50 = 0 (PR<50)(8)●N10 4>=N10>=1 (40>=PR>=10) (9)N10 = 0 (PR<10) (10)●N5 N5=1 (11)N5 = 0 (PR减去个位上钱数能被10整除)(如14-4=10)(12)●N1 4>=N1>=1 (13)N1 = 0 (PR为5的倍数)(14)3:由上述输入/输出条件组合出可能的情形。

黑盒测试-案例

黑盒测试-案例

1.1.1 程序说明
现有一个小程序,能够求出三个在-10000到+10000间整数中的最大者,程序界面如下:
图1-1程序运行界面
现在要为这个小程序设计黑盒测试用例。

1.1.2 单个文本框的测试用例设计
一、数值等价类
对每个文本框而言,输入值的限制是在-10000到10000之间,因此,我们可以划分一个有效等价类和二个无效等价类:
-10000 0 10000
●<-10000
●-10000到10000
●>+10000
根据这三个等价类,设计如下的测试用例:
表1-1 数值等价类用例
二、数据类型等价类
1、由于在文本框中只能输入整数,因此我们可以确定:有效等价类:数字
无效等价类:字母、小数点、控制字符、功能键
根据上述分析,确定如下测试用例
表1-2数据类型等价类测试用例
三、其他
除了上面列出的测试用例以外,为了使程序的性能更稳定、良好,我们还要设计如下的测试用例:
表1-3 测试用例表三四、边界值
要测试的程序有两个边界值,-10000和+10000,同时,按照经验,对于0和位数升级的数值(例如,从99到100,从999到1000等)也要做一个边界值来进行测试。

因此,我们可以设计出如下的测试用例:
表1-4 边界值测试用例
1.1.3 程序功能的测试用例设计
一、等价类
两个数值的大小有三种情况,大于、等于或小于,现在我们要对三个数进行比较,因此可以划分出如下的等价类:
表1-5等价类划分表
根据上面的等价类划分,我们可以设计出如下的测试用例:
表1-6程序功能等价类用例二、其它
我们还可以测试其它的一些测试用例,如下表所示:
表1-7其它测试用例。

黑盒测试方法的简单例子

黑盒测试方法的简单例子

题目:假设商店货品价格(R)皆不大於100元(且为整数),若顾客付款(P)在100元内,求找给顾客的最少货币个(张)数找给顾客的最少货币个(张)数 ?(货币面值50元(N50),10元(N10),5元(N5),1元(N1)四种)四种) 黑盒测试方法如下:黑盒测试方法如下: 等价类划分:等价类划分: 有效等价类:有效等价类:R1={ P-R=0 :输出值为0张}; R2={ 1<= P-R <5 :输出值只含有1元}; R3={ 5<= P-R <10 :输出值含有5元}; R4={ 10<= P-R <50 :输出值含有10元}; R5={ 50<= P-R <100 :输出值含有50元}; 无效等价类:无效等价类:R6={ P-R<0 或 100<= P-R :输入值范围错误}; R7={ P 为小数或字母等为小数或字母等 :输入值P 错误}; R8={ R 为小数或字母等为小数或字母等 :输入值R 错误}; R9={ P 为空为空 :输入值P 为空};R10={ R 为空为空 :输入值R 为空};边界值分析:边界值分析:根据上述有效等价类划分,可以得到有效等价类的边界值为P-R=0, P-R=0, P-R=1, P-R=1, P-R=1, P-R=4, P-R=4, P-R=4, P-R=5, P-R=5, P-R=9, P-R=10, P-R=49, P-R=50, P-R=99。

根据上述无效等价类划分,可以得到无效等价类的边界值为P-R= -1, P-R=100, P 为小数或字母, R 为小数或字母,P 为空,R 为空。

为空。

根据边界值分析可得以下测试用例表:根据边界值分析可得以下测试用例表: 测试用例测试用例 输入值P 输入值R 输出值(最少货币张数)输出值(最少货币张数) TC1 2 5 提示输入值P 不足不足 TC2 1 1 0(不用找钱)(不用找钱) TC3 3 2 1(找1张一元)张一元) TC4 8 4 4(找4张一元)张一元)TC5 10 5 1(找1张五元)张五元)TC6 15 6 5(找1张五元,4张一元)张一元)TC7 17 7 1(找1张十元)张十元)TC8 57 8 9(找4张十元,1张五元,4张一元)张一元)TC9 59 9 1(找1张五十元)张五十元)TC10 100 1 10(找1张五十元,4张十元,1张五元,4张一元)张一元) TC11 100 0 提示商品价格错误提示商品价格错误TC12 101 1 提示付款输入错误提示付款输入错误 TC13 1 -1 提示商品价格错误提示商品价格错误TC14 -1 101 提示付款输入以及商品价格错误提示付款输入以及商品价格错误 TC15 A 101 提示输入值格式错误提示输入值格式错误 TC16 0 1.23 提示输入值格式错误提示输入值格式错误 TC17 10 提示输入值为空提示输入值为空 TC18 20 提示输入值为空提示输入值为空下面为测试用例TC1的规范表:的规范表:ID:LG0101001 错误是否提示正确用例名称:验证输入值P错误是否提示正确测试项:输入值(顾客付款)P和输入值(货品价格)R环境要求:Windows XP SP1参考文档:软件规格说明书SpecLG01.doc优先级:高层次:1 依赖的测试用例:无步骤:1.打开浏览器。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件测试分类及介绍:软件测试是一项复杂的系统工程,从不同的角度考虑可以有不同的划分方法,对测试进行分类是为了更好的明确测试的过程,了解测试究竟要完成哪些工作,尽量做到全面测试。

1,按是否需要执行被测软件的角度按是否需要执行被测软件的角度,可分为静态测试和动态测试,前者不利用计算机运行待测程序而应用其他手段实现测试目的,如代码审核。

(我认为主要是让测试人员对编译器发现不了的潜在错误进行分析,如无效的死循环,多余的变量等),而动态测试则通过运行被测试软件来达到目的。

2、按阶段划分:1 单元测试单元测试是对软件中的基本组成单位进行的测试,如一个模块、一个过程等等。

它是软件动态测试的最基本的部分,也是最重要的部分之一,其目的是检验软件基本组成单位的正确性。

因为单元测试需要知道内部程序设计和编码的细节知识,一般应由程序员而非测试员来完成,往往需要开发测试驱动模块和桩模块来辅助完成单元测试。

因此应用系统有一个设计很好的体系结构就显得尤为重要。

一个软件单元的正确性是相对于该单元的规约而言的。

因此,单元测试以被测试单位的规约为基准。

单元测试的主要方法有控制流测试、数据流测试、排错测试、分域测试等等。

2 集成测试集成测试是在软件系统集成过程中所进行的测试,其主要目的是检查软件单位之间的接口是否正确。

它根据集成测试计划,一边将模块或其他软件单位组合成越来越大的系统,一边运行该系统,以分析所组成的系统是否正确,各组成部分是否合拍。

集成测试的策略主要有自顶向下和自底向上两种。

3 系统测试系统测试是对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等满足其规约所指定的要求,检查软件的行为和输出是否正确并非一项简单的任务,它被称为测试的“先知者问题”。

因此,系统测试应该按照测试计划进行,其输入、输出和其他动态运行行为应该与软件规约进行对比。

软件系统测试方法很多,主要有功能测试、性能测试、随机测试等等。

4 验收测试验收测试旨在向软件的购买者展示该软件系统满足其用户的需求。

它的测试数据通常是系统测试的测试数据的子集。

所不同的是,验收测试常常有软件系统的购买者代表在现场,甚至是在软件安装使用的现场。

这是软件在投入使用之前的最后测试。

5 回归测试回归测试是在软件维护阶段,对软件进行修改之后进行的测试。

其目的是检验对软件进行的修改是否正确。

这里,修改的正确性有两重含义:一是所作的修改达到了预定目的,如错误得到改正,能够适应新的运行环境等等;二是不影响软件的其他功能的正确性。

6 Alpha 测试:在系统开发接近完成时对应用系统的测试;测试后,仍然会有少量的设计变更。

这种测试一般由最终用户或其他人员员完成,不能由程序员或测试员完成。

7 Beta 测试:当开发和测试根本完成时所做的测试,而最终的错误和问题需要在最终发行前找到。

这种测试一般由最终用户或其他人员员完成,不能由程序员或测试员完成。

3、按测试方法划分:1 白盒测试白盒测试也称结构测试或逻辑驱动测试,是指基于一个应用代码的内部逻辑知识,即基于覆盖全部代码、分支、路径、条件的测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。

“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。

“白盒”法是穷举路径测试。

在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。

贯穿程序的独立路径数是天文数字。

但即使每条路径都测试了仍然可能有错误。

第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序。

第二,穷举路径测试不可能查出程序中因遗漏路径而出错。

第三,穷举路径测试可能发现不了一些与数据相关的错误。

白盒测试可以借助一些工具来完成如Junit Framework,Jtest等。

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

黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。

“黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。

“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。

实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。

黑盒测试也可以借助一些工具,如WinRunner,QuickTestPro,Rational Robot 等。

3 ALAC(Act-like-a-customer)测试ALAC测试是一种基于客户使用产品的知识开发出来的测试方法。

ALAC测试是基于复杂的软件产品有许多错误的原则。

最大的受益者是用户,缺陷查找和改正将针对哪些客户最容易遇到的错误。

软件测试举例:ATM机操作用例:一台ATM 机器的主角和用例。

下表包含了上图中提款用例的基本流和某些备用流:本用例的开端是ATM 处于准备就绪状态。

准备提款- 客户将银行卡插入ATM 机的读卡机。

验证银行卡- ATM 机从银行卡的磁条中读取帐户代码,并检查它是否属于可以接收的银行卡。

输入PIN - ATM 要求客户输入PIN 码(4 位)验证帐户代码和PIN - 验证帐户代码和PIN 以确定该帐户是否有效以及所输入的PIN 对该帐户来说是否正确。

对于此事件流,帐户是有效的而且PIN 对此帐户来说正确无误。

可以从这个用例生成下列场景注:为方便起见,备选流3 和6(场景3 和7)内的循环以及循环组合未纳入上表。

对于这7 个场景中的每一个场景都需要确定测试用例。

可以采用矩阵或决策表来确定和管理测试用例。

下面显示了一种通用格式,其中各行代表各个测试用例,而各列则代表测试用例的信息。

本示例中,对于每个测试用例,存在一个测试用例ID、条件(或说明)、测试用例中涉及的所有数据元素(作为输入或已经存在于数据库中)以及预期结果。

通过从确定执行用例场景所需的数据元素入手构建矩阵。

然后,对于每个场景,至少要确定包含执行场景所需的适当条件的测试用例。

例如,在下面的矩阵中,V(有效)用于表明这个条件必须是VALID(有效的)才可执行基本流,而I(无效)用于表明这种条件下将激活所需备选流。

下表中使用的“n/a”(不适用)表明这个条件不适用于测试用例。

在上面的矩阵中,六个测试用例执行了四个场景。

对于基本流,上述测试用例CW1 称为正面测试用例。

它一直沿着用例的基本流路径执行,未发生任何偏差。

基本流的全面测试必须包括负面测试用例,以确保只有在符合条件的情况下才执行基本流。

这些负面测试用例由CW2 至6 表示(阴影单元格表明这种条件下需要执行备选流)。

虽然CW2 至6 对于基本流而言都是负面测试用例,但它们相对于备选流2 至4 而言是正面测试用例。

而且对于这些备选流中的每一个而言,至少存在一个负面测试用例(CW1 - 基本流)。

每个场景只具有一个正面测试用例和负面测试用例是不充分的,场景4 正是这样的一个示例。

要全面地测试场景4 - PIN 有误,至少需要三个正面测试用例(以激活场景4):* 输入了错误的PIN,但仍存在输入机会,此备选流重新加入基本流中的步骤3 - 输入PIN。

* 输入了错误的PIN,而且不再有输入机会,则此备选流将保留银行卡并终止用例。

* 最后一次输入时输入了“正确”的PIN。

备选流在步骤5 - 输入金额处重新加入基本流。

注:在上面的矩阵中,无需为条件(数据)输入任何实际的值。

以这种方式创建测试用例矩阵的一个优点在于容易看到测试的是什么条件。

由于只需要查看V 和I(或此处采用的阴影单元格),这种方式还易于判断是否已经确定了充足的测试用例。

从上表中可发现存在几个条件不具备阴影单元格,这表明测试用例还不完全,如场景6 - 不存在的帐户/帐户类型有误和场景7 - 帐户余额不足就缺少测试用例。

一旦确定了所有的测试用例,则应对这些用例进行复审和验证以确保其准确且适度,并取消多余或等效的测试用例。

测试用例一经认可,就可以确定实际数据值(在测试用例实施矩阵中)并且设定测试数据:以上测试用例只是在本次迭代中需要用来验证提款用例的一部分测试用例。

需要的其他测试用例包括:* 场景6 - 帐户不存在/帐户类型有误:未找到帐户或帐户不可用* 场景6 - 帐户不存在/帐户类型有误:禁止从该帐户中提款* 场景7 - 帐户余额不足:请求的金额超出帐面金额在将来的迭代中,当实施其他事件流时,在下列情况下将需要测试用例:* 无效卡(所持卡为挂失卡、被盗卡、非承兑银行发卡、磁条损坏等)* 无法读卡(读卡机堵塞、脱机或出现故障)* 帐户已消户、冻结或由于其他方面原因而无法使用* ATM 内的现金不足或不能提供所请求的金额(与CW3 不同,在CW3 中只是一种币值不足,而不是所有币值都不足)* 无法联系银行系统以获得认可* 银行网络离线或交易过程中断电在确定功能性测试用例时,确保满足下列条件:* 已经为每个用例场景确定了充足的正面和负面测试用例。

* 测试用例可以处理用例所实施的所有业务规则,确保对于业务规则,无论是在内部、外部还是在边界条件/值上都存在测试用例。

* 测试用例可以处理所有事件或动作排序(如在设计模型的序列图中确定的内容),还应能处理用户界面对象状态或条件。

* 测试用例可以处理为用例所指定的任何特殊需求,如最佳/最差性能,有时这些特殊需求会与用例执行过程中的最小/最大负载或数据容量组合在一起。

对于负载测试:对于强度测试:为安全性/访问控制测试生成测试用例,在ATM 用例中,如果主角“银行客户”的卡和帐户有的属于拥有这个ATM 机的银行,有的是竞争银行的银行卡(和帐户),或是企图使用该ATM不支持的银行卡,则将对该主角“银行客户”执行不同的用例事件流。

对于功能性测试用例,请同样遵循上面列举的指南。

关于安全性和访问控制测试用例的示例:手机软件测试举例:一、等价类分析法等价类划分方法针对手机状态大致可以归几个大类:1.按键类(等价法):有效输入和无效输入(有效输入指UM和菜单指示;无效输入指测试菜单功能此时没有定义的按键和用户动作);2. 外部中断类(等价法):常用、不常用及无效2.1. 常用:来电和来消息(短信、彩信、push消息);掀合盖;侧键;耳机&FM;情景模式;电量不足2.2. 不常用:充电;闹钟&记事本&关机时间&整点报时提示;Icon&动画显示;Icon&动画刷新;编辑界面&pop显示框输入为空或满;编辑界面&pop显示框状态输入法默认&字符编码默认;失效SIM卡;大容量等SIM卡兼容;排序;号码识别;2.3. 无效:“资料读取中…”;“复制中…”;“请稍后再试”3. 存储器类3.1. 等价法分类:读或写;不读或不写。

相关文档
最新文档