编写软件测试用例的方法,你知道多少种

news2024/10/7 14:30:36

1、等价类划分法

适用场景:

有数据输入的地方,就可以使用等价类划分法。如:输入框

测试思想:

从大量数据中划分范围(等价类),然后从每个范围中挑选代表数据,这些代表数据要能反应这个范围内数据的测试结果。

概念:

有效等价类:对程序来说,有意义的、合理的数据(正确的、有效的数据)

无效等价类:对程序来说,没有意义、不合理的数据(错误的、无效的数据)

例:

需求:

a、手机号输入框:只允许输入数字。(只拿手机号做示范Lo)

无效等价类:汉字、表情、符号、空格等

有效等价类:数字

2、边界值

适用场景:

有数据输入的地方,在实际工作中,一般和等价类划分一起适用。、

测试思想:

边界值是程序员在编程时是最容易出错的位置,所以要测试边界。

概念:

是有效等价类和无效等价类之间的分界点,叫边界值(最小值,最大值)。还要测试次边界,也就是边界值两边的数据。

例:

b、密码输入框:8-20位字符(只允许输入:字母、英文符号、数字)

边界值:8位字符、20位字符

次边界:7位字符、9位字符、19位字符、21位字符

3、因果图/判定表(不太重要,当熟练后可以直接适用判定表,不画因果图)

适用场景:

在一个界面中有多个控件,如果控件之间存在组合关系或者限制关系,不同的控件组合会产生不同的输出结果,为了弄清楚不同的输入组合会产生怎样的输出结果,可以使用因果图或判定表。

概念:

因:输入条件

果:输出结果

就是通过画图的方式表达输入条件和输出结果之间的关系

因果图/判定表测试的步骤:

步骤:

步骤1:找出所有的输入条件

步骤2:找出所有的输出结果

步骤3:分析,列出输入条件之间所有的组合和限制条件

步骤4:确定每组输入条件的组合会产生怎样的输出结果,画因果图,填写判定表

(实际工作中因果图可以省略)

步骤5:编写测试用例  每一列代表一种组合,编写一条测试用例

因果图/判定表的特点:

1) 输入条件的排列顺序无关紧要

2) 输出结果的排列顺序无关紧要

3) 先测哪种组合后测哪种组合无关紧要

4) 每种组合是独立的

判定表格式如下:

判定表  名词术语

条件桩:问题的所有条件

动作桩:问题的所有输出

条件项:针对条件桩的取值

动作项:条件项的各种取值情况下的输出结果

4、正交排列法(不重要)

适用场合:

在一个界面中有多个控件,每个控件有多个取值,要考虑不同控件不同取值之间的组合 ,且组合数量较大的话,我们就可以使用正交排列法。

思想:

使用最少的抽样数据达到最广的,覆盖率最高的统计结果。

正交表公式如下:

L:line  行

n:表示正交表有几行,需要测试的组合的个数

n值是固定的,一旦正交表确定n值就是固定的,不需要测试人员自己计算。

m:表示正交表中允许出现的最大值

根据每个控件的取值个数来确定m值

k:表示正交表有几列

根据组合的控件个数进行确定,选择合适的正交表(百度搜)

方法总结:

a、 如果有多余的列,可以删除掉

b、 能映射的值先映射好(替换)

c、 把每一列多出的机会,尽量均匀分配给该列的各个取值

d、 要检查是否有完全一样的组合,如果有要适当处理(建议修改,也可以删除)

e、 选择正交表时正好能应用正交表示首选,如果不合适呢么选择最接近的。

实际工作中,属性设置测试,兼容性测试常用正交排列法,而且兼容性测试可以不编写测试用例,直接用正交排列表测试各种兼容组合。

5、测试大纲法:(不重要)

适用场景:

软件中有多个窗口,窗口中有若干操作(功能点),为了理清窗口之间的关系(结果),可以使用测试大纲法。

样例如下:

6、场景法

适用场景:

业务比较复杂的软件系统都适合使用场景法,场景法是基于软件业务的测试方法,测试人员把自己当成最终用户,尽可能真实的模拟用户在使用此软件的操作情形:

重点模拟两类操作:

用户正确操作的业务过程—验证软件的业务功能是否正确实现

模拟用户错误操作的情形—验证软件的异常处理能力(健壮性)

测试思路:

场景法是模拟用户操作软件时的各种情景,主要用于测试软件的业务逻辑和流程。当拿到一个测试任务是,我们并不先关注某个文本框的等价类等是否满足要求,而是先关注它的主要功能和业务流程是否正确实现,这就需要场景法来完成测试。当业务流程测试没有问题,也就是软件的主要功能没有问题时,我们再去关注控件的等价类、边界值等细节测试。(先整体后细节)

场景划分:

1)基本流(有效流、正确流)

模拟用户正确的业务操作流程就是基本流

2)备选流(无效流、错误流)

模拟用户错误的操作流程就是备选流

样例如下:


然后根据不同的场景去编写测试用例,一个场景可以是一条测试用例,也可以是多条测试用例。

总结:

感谢每一个认真阅读我文章的人!!!

 我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片免费领取,千万不要错过哦。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/767609.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

株洲科能冲刺上市:计划募资约6亿元,实控人为赵科峰、唐燕夫妇

7月17日,上海证券交易所披露的信息显示,已对株洲科能新材料股份有限公司(下称“株洲科能”)发出问询函。据贝多财经了解,株洲科能于2023年6月21日递交招股书,准备在科创板上市。 本次冲刺科创板上市&#x…

springboot+mybatis-plus实现自动建表

好长时间没输出了,最近工作上也是太多事,领导动不动就拍脑门,那叫一个酸爽~ 工作能力的提现不但是技术或解决问题的能力上,还体现在要能立刻满足领导的各种需求,不管是哪方面的需求,这样才能够拍上马屁&…

IDDR和ODDR

IDDR D:输入双倍速率数据(IOB输入,且数据在时钟的上升沿和下降沿都会发生切换,即一个时钟周期发送2bit数据) CE:时钟使能信号(高有效) C:时钟信号 S,R&#x…

STM32F4_串口 IAP

目录 前言 1. IAP简介 2. APP程序起始地址设置方法 3. 中断向量表的偏移量设置 4. 如何在MDK中生成 .BIN 文件 5. APP程序生成步骤 前言 IAP,即在应用编程。 1. IAP简介 IAP(In Application Programming)即 在应用编程,IAP…

Apache RocketMQ5.x-消息队列体验

Apache RocketMQ5.x-消息队列体验 Apache RocketMQ 是一款低延迟、高并发、高可用、高可靠的分布式消息中间件,由阿里开源,后由阿里捐赠给Apache基金会。 本次体验的目的是从技术角度验证一下在微服架构中,用Apache RocketMQ做为消息队列&am…

MQTT 订阅标识符详解

为什么需要订阅标识符 在大部分 MQTT 客户端的实现中,都会通过回调机制来实现对新到达消息的处理。 但是在回调函数中,我们只能知道消息的主题名是什么。如果是非通配符订阅,订阅时使用的主题过滤器将和消息中的主题名完全一致,…

chatglm微调

chatGML 看到 【【官方教程】ChatGLM-6B 微调:P-Tuning,LoRA,Full parameter】 【精准空降到 15:27】 https://www.bilibili.com/video/BV1fd4y1Z7Y5/?share_sourcecopy_web&vd_sourceaa8c13cff97f0454ee41e1f609a655f1&t927 记得看…

Java Mybatis02+oracle拓展

0目录 Mybatis 02Oracle 拓展 1.Mybatis 02 创建数据库和表 创建工程 实体类 util工具类 接口方法 Resource Mapper xml文件 配置文件 测试 加入模糊查询(根据姓名) 测试结果 2.ParameterType语法 实战 参数为对象 参数为…

Bean 作用域与生命周期

Bean 作用域与生命周期 ​ 对于 Spring 来说,核心操作对象就是存和取 Bean ,接下来就 Bean 的作用域与生命周期进行探讨。 文章目录 Bean 作用域与生命周期一、作用域的定义1.1、Bean 的6种作用域1.2、Bean作用域设置方法 二、Bean 的生命周期2.1、Bean…

【Java】Java实现微信小程序发送服务通知

文章目录 前言一、文档来源二、JAR包引入三、后端工作四、编写配置文件配置一:WxConfig配置二:WxProperties 五、代码编写 前言 在上个月接到一个需求,大概是需要计算一条数据的最大办理时间从而发送任务超期的微信小程序服务通知&#xff0…

怎么进行流程图制作?分享几种绘制方法

怎么进行流程图制作?流程图是一种图形化表示流程的图表,通常用于描述业务、计划或工作流程。它可以帮助人们更好地理解复杂的流程,并且提供了一种清晰的方法来记录和共享流程信息。下面介绍一些绘制流程图的方法,可以帮助我们快速…

4 自动微分 Automatic Differentitaion

计算图 Computational Graph 图上的每个节点代表一个中间值边事输入输出的关系 forward 求导 forward mode AD 上图中从前向后,一步一步计算每个中间值对 x1的偏导,那么计算到 v7,就得到了整个函数对于 x1的偏导。 有limitation 对一个参数…

echarts开发遇到的问题

echarts开发遇到的问题 1.rich富文本标签作为横向柱状图的刻度标签,其中带有icon。rich里不能写参数,只能写死?圆角设置无效? 解决办法: 自己写横向柱状图 散点图性能优化配置的临界点,最低优化数值必须…

超全整理,软件测试高频面试题(功能/接口/自动化测试-附答案)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 功能测试 1、双十…

LCD—STM32液晶显示(4.液晶控制代码讲解)

目录 STM32液晶控制代码讲解 液晶接口封装介绍 使用LCD的配置步骤 内存操作要使用volatile进行修饰 图形绘制实现 绘制矩形 重点补充 STM32液晶控制代码讲解 液晶接口封装介绍 指南者液晶接口原理图 左边DB00—DB15表示液晶屏的数据线引脚,分别对应STM32的F…

使用ppocr突然退出问题

本次使用conda装了一个cuda10.2版本的paddleocr,然后所有的环境检查没问题,使用paddle自带的检查代码,输出提醒paddle可以正常使用: >>> import paddle >>> paddle.utils.run_check() 输出结果提示安装正常 …

零编程经验也能打造精美微信展示小程序的秘诀揭秘

随着微信的普及和发展,微信展示小程序成为了许多企业展示自己形象的重要渠道。那么如何快速地搭建一个精美的微信展示小程序呢?下面就为大家详细介绍一下具体操作步骤。 首先,进入【乔拓云】平台后台。乔拓云是一款非常优秀的小程序开发平台&…

php伪协议(文件包含)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 php伪协议 伪协议详情 php伪协议 文件包含直接读取的是文件,而不是文件源码,所以要想办法读取源码方法。 那么就要涉及到 PHP 伪协议 ph…

LabVIEW开发航空电子设备嵌入式诊断半物理仿真系统

LabVIEW开发航空电子设备嵌入式诊断半物理仿真系统 航电集成系统是现代战争飞机的重要组成部分,包括惯性导航系统、飞行控制系统、机电管理系统和任务计算机等子系统。战机的作战性能与航电系统息息相关,可以说,没有高性能的空电系统&#x…

行业首家!法大大荣获“数据安全管理能力认证(DSMC)”证书

7月11日,法大大获得由中国信息通信研究院(以下简称“中国信通院”)颁发的“数据安全管理能力认证(DSMC)证书”(以下简称“DSMC证书”),成为行业内首家获颁该证书的企业,法…