首页 > 其他分享 >软件测试中的等价类的划分方法

软件测试中的等价类的划分方法

时间:2025-01-03 12:05:14浏览次数:3  
标签:类为 无效 等价 划分 测试用例 输入 软件测试

软件测试中的等价类划分方法是一种典型的黑盒测试策略,旨在通过合理划分输入数据的集合,用较少的测试用例来检测潜在的缺陷。

一、等价类的定义与类型

  1. 等价类定义:等价类是指某个输入域的子集合,在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,具有等价特性。测试某等价类的代表值就等于对这一类其它值的测试。

  2. 等价类类型

    • 有效等价类:包含合理、有意义的输入数据,这些数据符合软件需求规格说明。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
    • 无效等价类:包含不合理、无意义的输入数据,这些数据不符合软件需求规格说明。利用无效等价类可检验程序对于无效数据的异常处理能力。

二、等价类划分的原则

  1. 按照区间划分:在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类。例如,输入值是学生成绩,范围是0~100之间,那么有效等价类为0≤成绩≤100(如0、1、10等),无效等价类为<0或>100(如-1、101等)。
  2. 按照数值划分:在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。例如,输入条件说明输入学历为本科、硕士和博士三种之一,那么有效等价类为本科、硕士和博士其中一种,无效等价类为除这三种外的其他字符(如小学、专科等)。
  3. 按照数值集合划分:在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。例如,密码输入框要求密码必须是数字或字母,那么有效等价类为密码是数字和字母的组合,无效等价类为密码包括中文、密码包括其他符号等。
  4. 按限制条件或规则划分:在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。例如,校内电话号码拨外线为9开头,那么有效等价类为9+外线号码,无效等价类为非9开头+外线号码、9+非外线号码等。
  5. 细分等价类:在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,应再将该等价类进一步划分为更小的等价类,并建立等价类表。

三、等价类测试用例的类别

根据测试用例的完整性,等价类测试用例可以划分为以下几类:

  1. 弱一般等价类测试:遵循单缺陷原则,要求用例覆盖每一个变量的一种取值即可,取值为有效值。
  2. 弱健壮等价类测试:在弱一般等价类的基础上,增加取值为无效值的情况。对于无效输入,测试用例将拥有一个无效值,并保持其余的值是有效的。
  3. 强一般等价类测试:遵循多缺陷原则,要求用例覆盖每个变量的每种取值之间的迪卡尔乘积,即所有变量所有取值的所有组合,取值为有效值。
  4. 强健壮等价类测试:在强一般等价类的基础上,增加取值为无效值的情况。

四、等价类划分法的应用步骤

  1. 确定输入条件的等价类:分析被测试的软件或系统的输入域,将输入数据划分为若干个等价类。
  2. 为每个等价类设计测试用例:确保测试用例能够覆盖所有等价类。设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止。然后,设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
  3. 优先考虑无效等价类:在测试资源有限的情况下,优先测试无效等价类,因为它们更容易发现程序中的错误。
  4. 结合其他测试方法:等价类划分可以与其他测试方法(如边界值分析、错误猜测等)结合使用,以提高测试的效率和效果。
  5. 适时更新等价类:在软件需求变更或设计变更时,应及时更新等价类,确保测试用例的有效性。

标签:类为,无效,等价,划分,测试用例,输入,软件测试
From: https://blog.csdn.net/m0_59091453/article/details/144866813

相关文章

  • 「软件测试」常见面试题
    ......
  • GPT 非LVM分区划分 以及 相邻分区扩容
    分区[root@pgsql~]$lsblk/dev/sdf可以看到新增盘sdf40G启动parted并选择磁盘parted/dev/sdf(parted)select/dev/sdf创建GPT分区表(parted)mklabelgptmkpartprimary0gb10gbmkpartprimary10gb20gbqmkdir-p/data7mkfs.ext4/dev/s......
  • 做软件测试,28岁失业了,转行做什么好呢?零基础入门到精通,收藏这篇就够了
    如今做软件测试失业已经不是什么新鲜事了,失业并不可怕,最可怕的是失业后不知道要干嘛。见过太多人,害怕失业,但又恐惧失业后自己能做什么?计算机热门就业方向从目前市场情况来讲,网络安全的就业前景是非常不错的,2022年的统计数据,网络安全专业的缺口已经增长到140万人。1、就......
  • LOGIC 5.0版本软件测试报告
    软件测试报告2024年12月24日1.引言1.1测试目的测试数字电路模拟游戏的各项功能是否按照设计要求正确实现,确保软件在不同使用场景下的稳定性和可靠性。功能性验证:检查游戏提供的所有功能是否按预期工作,包括但不限于界面跳转、保存与加载进度、各个元件的操作逻辑等。BUG发......
  • hotspot-vue3 图片拖动划分热点区域 使用
    github地址https://github.com/shadow-Fiend/hotspot-vue3测试代码<template><divclass="interactive-image"><hotspot:image="image":zonesInit="zones":types="types":minSize="52":switchOpt......
  • OI 中的等价无穷大方程
    定义\[\lim\limits_{x\to\infty}\frac{A(x)}{B(x)}=1\iffA(x)\simB(x)\]下文中无歧义的情况下,\(\lim\)代表\(\lim\limits_{x\to\infty}\),函数省略\((x)\)。性质\(A\simB\)两边可以同时乘除等价的函数。\(A\simB\)两边可以同时求幂。\[\begin{aligned}......
  • 【软件测试】JMeter测试工具
    一、JMeter的安装配置:官网下载JMeter:ApacheJMeter-DownloadApacheJMeter  在上述网站中下载Binaries中的apache-Jmeter-5.6.3 tgz解压下载的Jmeter文件进入解压后文件夹的bin目录,直接在bin目录下打开ApacheJMeter.jar文件。二、举例:选择接口1进行HTTP-GET和HTTP-POS......
  • 动态规划算法-子数组系列之_等差数列划分
    413.等差数列划分( Leetcode)等差数列划分题目描述如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。给你一个整数数组 nums ,返回数组 nums 中所有为等差数组的 子......
  • 【软件测试】Postman接口测试
    一、安装Postman打开官网下载地址DownloadPostman|GetStartedforFree,点击DownloadtheApp即可下载当前系统下最新版本的Postman,如图1所示。Postman的安装非常简单,安装成功后打开软件,初次登录时会进入注册界面要求注册(CreateAccount),可以跳过注册直接进入Postman。二......
  • 【软件测试】前端测试分析
    目的1.从前端角度来发现Web系统的问题。2.熟悉Web前端测试方法。3.掌握应用层协议HTTP的结构和工作过程。4.熟悉GET和POST请求过程(一)对新浪首页进行前端分析使用Chrome打开新浪首页https:/www.sina.com.cn/,打开开发者工具模式进行监控首页的加载过程,对加载过程进......