测试用例的设计方法(全)
- 格式:doc
- 大小:238.00 KB
- 文档页数:29
测试用例设计方法等价类划分理论知识等价类划分是一种典型的黑盒测试方法。
这一方法完全不考虑程序的内部结构,只依据程序的规格说明来设计测试用例。
等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭示程序中的错误都是等效的。
等价类合理地假设:某个等价类的代表值,与该等价类的其他值,对于测试来说是等价的。
因此,可以把全部的输入数据划分成若干的等价类,在每一个等价类中取一个数据来进行测试。
这样就能以较少的具有代表性的数据进行测试,而取得较好的测试效果。
等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法.1) 分类:划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类.有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能.无效等价类:与有效等价类的定义恰巧相反.设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性.2)划分等价类的方法:下面给出六条确定等价类的原则:①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类.②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类.③在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类.④在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类.⑤在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则).⑥在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类.3)原则:设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类:输入条件有效等价类无效等价类... ... ...... ... ...然后从划分出的等价类中按以下三个原则设计测试用例:①为每一个等价类规定一个唯一的编号.②设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步.直到所有的有效等价类都被覆盖为止.③设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步.直到所有的无效等价类都被覆盖为止.之所以这么做,是因为程序中对于某一个错误输入的检查,往往会屏蔽对于其他错误输入的检查。
测试用例的设计方法
《测试用例的设计方法》
一、定义
测试用例是指由测试者根据测试目标和测试需求,设计出的一系列的测试步骤和预期结果的集合,用来检查软件的功能和性能的一种文档或者测试案例的总称。
二、设计流程
1. 收集需求:通过观察、记录和分析,提取软件的功能和性能要求的具体内容;
2. 识别测试对象:根据软件功能和性能需求,识别出关键的测试对象;
3. 构建测试场景:结合测试对象,根据软件的具体要求,构建出符合测试要求的测试场景;
4. 确定测试步骤:根据每个测试场景,分析出其中所包含的重要测试步骤;
5. 编写用例:将上述测试步骤和预期结果整合到一起,并按照某种规范用文档的形式描述出来,就形成了一个测试用例;
6. 执行用例:按照用例中的步骤,对软件进行测试,并记录测试结果。
三、编写说明
1. 测试用例的编写应该清晰易懂、简洁、具体、可行;
2. 测试用例中的步骤应该表达清楚,要能够准确地描述测试者
所进行的操作;
3. 测试用例中的预期结果应该清楚明确,要能够准确地反映软件在测试者进行步骤操作后应该出现的结果;
4. 测试用例应该有明确的测试目的和依据,如果某个用例无法覆盖某个测试目标,可以考虑增加新的用例,或者调整原有的用例;
5. 测试用例应该与其它的用例相互补充,如果测试者发现某个用例不能够满足测试需求,应该及时修改或者重新设计新的用例。
设计测试用例的方法有哪些设计测试用例的方法有很多种。
下面将介绍几种常见的测试用例设计方法。
1. 等价类划分法:将输入条件或输出条件划分为若干个等价类,从每个等价类中选取一个典型值作为测试用例。
例如,对于一个账号注册的系统,可以将用户名输入划分为长度不超过10个字符和超过10个字符两个等价类,然后选取一个符合条件的测试用例进行测试。
2. 边界值分析法:测试用例中包含一些边界值,例如最大值、最小值、临界值等。
边界值往往比一般的值更容易引发错误。
例如,对于一个计算器的系统,在测试除法功能时,可以设计测试用例为除数为0、除数为1和除数为-1的情况。
3. 错误推测法:根据错误推测的原理,假设程序的某个部分可能发生错误,并设计测试用例来验证。
例如,对于一个在线商城的系统,在提交订单时,在错误推测的基础上,设计测试用例验证逻辑错误(如用户未登录时无法下单)或输入错误(如购买数量为负数时无法提交)。
4. 因果图法:将输入条件和输出条件按照因果关系进行组合,从而得到覆盖所有可能情况的测试用例。
例如,对于一个购物车功能的系统,因果图法可设计测试用例组合为加入商品、减少商品、删除商品、结算等操作之间的组合情况。
5. 结构化测试方法:根据软件的内部结构,设计测试用例以覆盖各个模块、分支和路径。
常用的结构化测试方法有语句覆盖、判定覆盖、条件覆盖、路径覆盖等。
例如,对于一个条件判断的系统,可以设计测试用例来验证每个条件的真假时不同分支的执行情况。
6. 随机测试方法:通过随机生成测试用例的方式进行测试。
随机测试可以覆盖较大的输入空间,但可能无法覆盖所有的边界条件和特殊情况。
例如,对于一个随机生成数字的系统,可以设计测试用例来验证生成的数字是否在指定范围内,并验证系统对于边界情况的处理。
7. 场景测试方法:根据实际使用场景,设计测试用例来模拟真实环境下的操作和交互。
场景测试可以更好地模拟用户的实际使用情况和需求。
例如,对于一个电子邮件系统,可以设计场景测试用例来模拟用户注册、发送邮件、收取邮件等真实操作。
测试用例设计方法测试用例设计是软件测试过程中非常重要的一环。
通过合理的测试用例设计,可以全面地验证软件系统的功能是否正常、性能是否满足要求、稳定性是否可靠等。
在测试用例设计中,可以使用多种方法来确保测试的全面性和有效性。
下面我将介绍几种常用的测试用例设计方法。
1. 等价类划分法等价类划分法是一种基于输入数据的测试用例设计方法。
它将输入数据划分为若干等价类,每个等价类包含了一组具有相同特征和行为的输入值。
然后,从每个等价类中选择一个典型的输入值作为测试用例。
这样做的好处是在尽量少的测试用例下,可以覆盖到不同的输入条件。
例如,对于一个要求输入年龄的功能,可以划分为小于0岁、0到17岁、18到65岁、65岁以上等等等价类。
2. 边界值分析法边界值分析法是在等价类划分法的基础上,进一步考虑边界情况的测试用例设计方法。
边界值通常是系统能够处理的最小和最大输入值。
通过测试边界值,可以发现输入值是否能够正确地被系统处理。
例如,对于一个要求输入1到100之间的数字的功能,可以设计测试用例分别为0、1、2、99、100、101等。
3. 错误推测法错误推测法是基于测试人员的经验和直觉来推测可能出现的错误情况,并针对这些错误情况设计测试用例。
这种方法更关注于系统对异常情况的处理能力。
例如,对于一个邮件发送功能,可以设计测试用例来测试系统在网络不稳定、收件人邮箱不正确、邮件附件过大等错误情况下的反应。
4. 状态转换法状态转换法是针对有状态的系统进行测试用例设计的一种方法。
通过分析系统的状态变化,设计测试用例来覆盖各个状态和状态之间的转换。
例如,对于一个订单处理系统,可以设计测试用例来覆盖订单的创建、支付、发货、取消等各个状态。
5. 正交实验法正交实验法是一种基于统计学的测试用例设计方法。
它通过对系统的各个因素进行组合,设计最少的测试用例来覆盖尽可能多的情况。
这种方法适用于系统的因素比较复杂,测试用例组合爆炸的情况。
例如,对于一个电子商务网站,可以设计测试用例来测试不同的商品类别、商品属性、支付方式等组合情况。
测试用例的设计方法(全)等价类划分方法:一.方法简介1.定义是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
该方法是一种重要的,常用的黑盒测试用例设计方法。
2.划分等价类:等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。
等价类划分可有两种不同的情况:有效等价类和无效等价类。
1)有效等价类是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
2)无效等价类与有效等价类的定义恰巧相反。
无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。
对于具体的问题,无效等价类至少应有一个,也可能有多个。
设计测试用例时,要同时考虑这两种等价类。
因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具有更高的可靠性。
3.划分等价类的标准:1)完备测试、避免冗余;2)划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合;3)并是整个集合:完备性;4)子集互不相交:保证一种形式的无冗余性;5)同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到"相同的执行路径"。
4.划分等价类的方法1)在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
如:输入值是学生成绩,范围是0~100;2)在输入条件规定了输入值的集合或者规定了"必须如何"的条件的情况下,可确立一个有效等价类和一个无效等价类;3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
测试用例的几种常用设计方法测试用例是软件测试中的重要组成部分,它们对于确保软件质量至关重要。
在设计测试用例时,可以采用多种不同方法。
下面将介绍几种常用的测试用例设计方法。
1.等价类划分法(Equivalent Partitioning)等价类划分法是一种基于输入数据的测试用例设计方法。
它将输入数据划分为若干等价类,每个等价类中的数据具有相同的功能和处理方式。
在设计测试用例时,只需要选择每个等价类中的一个或几个代表性的测试数据进行测试即可。
这种方法可以有效地减少测试用例的数量,同时保证测试覆盖面。
2. 边界值分析法(Boundary Value Analysis)边界值分析法是一种基于输入数据边界的测试用例设计方法。
它关注输入数据的边界条件,通常在输入数据的最小值、最大值和边界附近选择测试用例。
这是因为在边界处发生的错误往往比在其他地方发生的错误更容易被发现。
通过边界值分析法设计的测试用例可以提高测试效率和覆盖度。
3. 错误推测法(Error Guessing)错误推测法是一种基于经验和直觉的测试用例设计方法。
它假设测试人员能够猜测到软件中潜在的错误,并设计相应的测试用例来验证这些错误。
这种方法不依赖于任何特定的测试技术或规则,而是基于测试人员的经验和洞察力。
错误推测法可以应用于各种测试阶段,并且适用于不同类型的软件。
4. 决策表法(Decision Table)决策表法是一种基于规则和条件的测试用例设计方法。
它使用表格来表示系统的决策条件和相应的动作结果。
在设计测试用例时,可以根据表格中的各种条件组合来选择相应的测试用例。
决策表法对复杂的业务逻辑和条件约束非常有效,可以提高测试覆盖范围和准确性。
5. 状态转换法(State Transition)状态转换法是一种基于系统状态的测试用例设计方法。
它将系统的不同状态和状态之间的转换关系进行建模,并选择相应的测试用例来验证系统在不同状态下的行为。
状态转换法适用于具有明确状态转换关系的系统,例如有限状态机。
测试用例的设计方法测试用例是软件测试中非常重要的一环,它是对软件功能、性能、安全性等方面进行验证的基本工具。
一个好的测试用例可以有效地帮助测试人员发现软件中的问题,提高软件质量。
那么,如何设计一个高质量的测试用例呢?下面我们将介绍一些测试用例的设计方法。
首先,我们需要明确测试的目的和范围。
在设计测试用例之前,我们需要明确要测试的功能或模块,以及测试的目的是什么。
只有明确了测试的目的和范围,才能有针对性地设计测试用例,提高测试效率。
其次,我们需要收集测试数据。
在设计测试用例时,我们需要收集相关的测试数据,包括输入数据、预期输出、边界条件等。
这些数据将帮助我们设计出全面、有效的测试用例,覆盖软件的各种情况。
接着,我们可以使用不同的测试设计技术。
测试设计技术包括等价类划分、边界值分析、因果图等。
这些技术可以帮助我们设计出高效的测试用例,覆盖软件的各种情况,提高测试的覆盖率。
另外,我们还可以使用测试工具辅助设计测试用例。
测试工具可以帮助我们自动生成测试用例,提高测试效率。
同时,测试工具还可以帮助我们管理和维护测试用例,提高测试用例的可维护性。
最后,我们需要对设计的测试用例进行评审和修改。
设计好测试用例后,我们需要对测试用例进行评审,确保测试用例的完整性和准确性。
同时,根据评审结果,我们还需要对测试用例进行修改和优化,不断提高测试用例的质量。
总之,设计测试用例是软件测试工作中非常重要的一环。
通过合理的测试用例设计,可以提高测试效率,发现软件中的问题,提高软件质量。
希望以上介绍的测试用例设计方法能够帮助大家更好地进行软件测试工作。
测试用例设计方法
测试用例设计方法主要包括以下几种:
1. 黑盒测试用例设计方法:主要根据需求、功能规格、接口规范等来设计测试用例,不需要了解内部实现细节。
2. 白盒测试用例设计方法:主要根据源代码结构、逻辑覆盖、路径覆盖等来设计测试用例,需要了解内部实现细节。
3. 等价类划分法:将输入条件划分为若干个等价类,从每个等价类中选择一个测试用例进行测试,以覆盖不同情况。
4. 边界值分析法:主要关注输入条件的边界值,选择邻近边界值和边界值本身作为测试用例。
5. 因果图方法:通过绘制因果图,将各种因素和对应的测试用例联系起来,以确定测试用例的设计。
6. 正交试验方法:将多个因素进行组合,选取各个因素的不同取值,以确定测试用例的设计。
7. 检查表法:根据需求规格和功能说明等编制一个检查表,从每个检查表中选
择一个测试用例进行测试。
8. 错误推测法:通过推测可能发生的错误,设计相应的测试用例,以覆盖这些错误的情况。
对于测试用例设计,可以根据具体的需求和项目情况选择适合的方法进行设计。
同时,还需要考虑测试用例之间的覆盖率,以确保对系统的功能进行充分的覆盖和测试。
测试用例设计的方法测试用例设计是软件测试中的重要环节,它旨在验证软件系统的正确性和稳定性。
一个好的测试用例设计可以帮助测试人员高效地发现和修复软件中的缺陷,确保软件质量。
下面将介绍几种常用的测试用例设计方法。
1. 边界值分析法边界值分析法通过测试边界值来检验系统的健壮性。
该方法假设错误往往发生在边界上,因此对于特定输入条件,测试用例应包括最小值、最大值以及接近最小值和最大值的临界值。
例如,一个接受年龄输入的系统,可以设计测试用例包括负数、0、1、100、101等边界值。
2. 等价类划分法等价类划分法是将输入条件划分为多个等价类,然后从每个等价类中选择一个测试用例进行测试。
等价类划分法的基本原则是:一个等价类中的数据具有相同的功能和行为,无论选择其中的哪个值作为输入,系统的行为都应该是一致的。
例如,对于一个接受月份输入的系统,可以将月份划分为等价类:1-12个月是有效的输入,其他数字和非数字是无效的输入。
3. 成对测试法成对测试法是一种组合测试方法,它通过组合两个或多个输入条件来设计测试用例,以验证系统对不同条件的组合是否正确处理。
该方法适用于系统具有多个输入条件的场景。
例如,一个在线商城系统,会有多种支付方式和配送方式,可以设计不同的测试用例来测试各种支付和配送方式的组合效果。
4. 状态转换法状态转换法适用于测试有状态的系统,例如有限状态机、状态驱动的系统等。
它通过设计测试用例来验证系统在不同状态下的行为是否符合预期。
测试用例应包括系统从一个状态转换到另一个状态的过程,以及在每个状态下系统的行为。
例如,一个电梯系统的状态可以包括:停止、上升、下降等,可以设计测试用例来测试系统在不同状态下的响应和行为。
综上所述,测试用例设计是软件测试中非常重要的一环。
通过边界值分析法、等价类划分法、成对测试法和状态转换法等方法,可以设计出全面、有效的测试用例。
测试人员可以根据具体的系统特点和需求,选择合适的方法来进行测试用例设计,以提高测试效率和发现软件中的缺陷。
测试用例的设计方法(全)等价类划分方法:一.方法简介1.定义是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
该方法是一种重要的,常用的黑盒测试用例设计方法。
2.划分等价类:等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。
等价类划分可有两种不同的情况:有效等价类和无效等价类。
1)有效等价类是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
2)无效等价类与有效等价类的定义恰巧相反。
无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。
对于具体的问题,无效等价类至少应有一个,也可能有多个。
设计测试用例时,要同时考虑这两种等价类。
因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具有更高的可靠性。
3.划分等价类的标准:1)完备测试、避免冗余;2)划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合;3)并是整个集合:完备性;4)子集互不相交:保证一种形式的无冗余性;5)同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到"相同的执行路径"。
4.划分等价类的方法1)在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
如:输入值是学生成绩,范围是0~100;2)在输入条件规定了输入值的集合或者规定了"必须如何"的条件的情况下,可确立一个有效等价类和一个无效等价类;3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
例:输入条件说明学历可为:专科、本科、硕士、博士四种之一,则分别取这四种这四个值作为四个有效等价类,另外把四种学历之外的任何学历作为无效等价类。
5)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则);6)在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。
5.设计测试用例在确立了等价类后,可建立等价类表,列出所有划分出的等价类输入条件:有效等价类、无效等价类,然后从划分出的等价类中按以下三个原则设计测试用例:1)为每一个等价类规定一个唯一的编号;2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
二.实战演习1.某程序规定:"输入三个整数a 、b 、c 分别作为三边的边长构成三角形。
通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算… "。
用等价类划分方法为该程序进行测试用例设计。
(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。
)分析题目中给出和隐含的对输入条件的要求:(1)整数(2)三个数(3)非零数(4)正数(5)两边之和大于第三边(6)等腰(7)等边如果a 、b 、c 满足条件(1 )~ (4 ),则输出下列四种情况之一:1)如果不满足条件(5),则程序输出为" 非三角形" 。
2)如果三条边相等即满足条件(7),则程序输出为" 等边三角形" 。
3)如果只有两条边相等、即满足条件(6),则程序输出为" 等腰三角形" 。
4)如果三条边都不相等,则程序输出为" 一般三角形" 。
列出等价类表并编号覆盖有效等价类的测试用例:a b c 覆盖等价类号码3 4 5 (1)--(7)4 45 (1)--(7),(8)4 5 5 (1)--(7),(9)5 4 5 (1)--(7),(10)4 4 4 (1)--(7),(11)覆盖无效等价类的测试用例:2.设有一个档案管理系统,要求用户输入以年月表示的日期。
假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。
现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。
1)划分等价类并编号,下表等价类划分的结果2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、⑤、⑧,设计的测试用例如下:测试数据期望结果覆盖的有效等价类200211 输入有效①、⑤、⑧3)为每一个无效等价类设计一个测试用例,设计结果如下:测试数据期望结果覆盖的无效等价类95June 无效输入②20036 无效输入③2001006 无效输入④198912 无效输入⑥200401 无效输入⑦200100 无效输入⑨200113 无效输入⑩3.NextDate 函数包含三个变量:month 、day 和year ,函数的输出为输入日期后一天的日期。
例如,输入为2006年3月7日,则函数的输出为2006年3月8日。
要求输入变量month 、day 和year 均为整数值,并且满足下列条件:①1≤month≤12②1≤day≤31③1920≤year≤20501)有效等价类为:M1={月份:1≤月份≤12}D1={日期:1≤日期≤31}Y1={年:1812≤年≤2012}2)若条件① ~ ③中任何一个条件失效,则NextDate 函数都会产生一个输出,指明相应的变量超出取值范围,比如"month 的值不在1-12 范围当中" 。
显然还存在着大量的year 、month 、day 的无效组合,NextDate 函数将这些组合作统一的输出:" 无效输入日期" 。
其无效等价类为:M2={月份:月份<1}M3={月份:月份>12}D2={日期:日期<1}D3={日期:日期>31}Y2={年:年<1812}Y3={年:年>2012}弱一般等价类测试用例月份日期年预期输出6 15 1912 1912年6月16日强一般等价类测试用例同弱一般等价类测试用例注:弱--有单缺陷假设;健壮--考虑了无效值(一)弱健壮等价类测试用例ID 月份日期年预期输出WR1 6 15 1912 1912年6月16日WR2 -1 15 1912 月份不在1~12中WR3 13 15 1912 月份不在1~12中WR4 6 -1 1912 日期不在1~31中WR5 6 32 1912 日期不在1~31中WR6 6 15 1811 年份不在1812~2012中WR7 6 15 2013 年份不在1812~2012中(二)强健壮等价类测试用例ID 月份日期年预期输出SR1 -1 15 1912 月份不在1~12中SR2 6 -1 1912 日期不在1~31中SR3 6 15 1811 年份不在1812~2012中SR4 -1 -1 1912 两个无效一个有效SR5 6 -1 1811 两个无效一个有效SR6 -1 15 1811 两个无效一个有效SR7 -1 -1 1811 三个无效4.佣金问题等价类测试用例,它是根据佣金函数的输出值域定义等价类,来改进测试用例集合。
输出销售额≤1000元佣金10%1000<销售额≤1800佣金=100+(销售额-1000)*15%销售额>1800 佣金=220+(销售额-1800)*20%测试用例枪机(45) 枪托(30) 枪管(25) 销售额佣金1 5 5 5 500 502 15 15 15 1500 1753 25 25 25 2500 360根据输出域选择输入值,使落在输出域等价类内,可以结合弱健壮测试用例结合。
边界值分析方法:一.方法简介1.定义:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。
通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
2.与等价划分的区别1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。
3.边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
使用边界值分析方法设计测试用例,首先应确定边界情况。
通常输入和输出等价类的边界,就是应着重测试的边界情况。
应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
4.常见的边界值1)对16-bit 的整数而言32767 和-32768 是边界2)屏幕上光标在最左上、最右下位置3)报表的第一行和最后一行4)数组元素的第一个和最后一个5)循环的第0 次、第1 次和倒数第2 次、最后一次5.边界值分析1)边界值分析使用与等价类划分法相同的划分,只是边界值分析假定错误更多地存在于划分的边界上,因此在等价类的边界上以及两侧的情况设计测试用例。
例:测试计算平方根的函数--输入:实数--输出:实数--规格说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息"平方根非法-输入值小于0"并返回0;库函数Print-Line可以用来输出错误信息。
2)等价类划分:I.可以考虑作出如下划分:a、输入(i)<0 和(ii)>=0b、输出(a)>=0 和(b) ErrorII.测试用例有两个:a、输入4,输出2。
对应于(ii) 和(a) 。
b、输入-10,输出0和错误提示。
对应于(i) 和(b) 。
3)边界值分析:划分(ii)的边界为0和最大正实数;划分(i)的边界为最小负实数和0。
由此得到以下测试用例:a、输入{最小负实数}b、输入{绝对值很小的负数}c、输入0d、输入{绝对值很小的正数}e、输入{最大正实数}4)通常情况下,软件测试所包含的边界检验有几种类型:数字、字符、位置、重量、大小、速度、方位、尺寸、空间等。