软件测试-测试用例

news2025/2/12 17:01:27

目录

测试用例的四个要素

测试用例设计方法

基于需求进行测试用例的设计

等价类

边界值

判定表

正交表

通过allpirs画正交表

场景设计法

错误猜测法

面试题

如何模拟弱网

接口如何测试

zip命令测试

测试用例万能公式

水杯测试用例

微信发朋友圈


测试用例的四个要素

测试环境,测试数据,操作步骤,预期结果.

评价测试用例的标准: 对比好坏用例的评价标准

用例表达清楚,无二义性。

用例可操作性强。

用例的输入与输出明确。一条用例只有一个预期结果。

用例的可维护性好。

用例对需求的覆盖率高。


测试用例设计方法

基于需求进行测试用例的设计

基于需求设计测试用例是测试设计和开发测试用例的基础,第一步就要分析测试需求,验证需求是否正 确、完整、无二义性,并且逻辑自洽。在需求正确的基础上细化测试需求,从测试需求提炼出一个个测 试点或者测试项,然后根据每一个测试点进行测试用例的设计;
在分析测试需求时,一般分为功能测试需求 非功能测试需求
功能测试需求包括业务流程相关,界面,易用性等.
非功能测试需求包括性能,网络,安全性,可靠性,兼容性,易维护性和可以执行等.
可以从这个几个方面设计出测试点从而进行测试用例的设计.

等价类

输入的集合是无穷的,不能全都覆盖到,所以我们根据需求将输入划分成若干个等价类,从等价类中选出一个测试用例,如果这个测试用例通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题.

等价类分为有效等价类和无效等价类.

有效等价类:对于程序的规格说明书是合理的,有意义的输入数据组成的集合,利用有效等价类验证程序是否实现了规格说明书中所规定的功能和性能.

无效等价类:根据需求说明书,不能满足需求的集合.

有效等价类:6-15位

无效等价类:小于6位和大于15位

等价类思想设计测试用例步骤

  1. 充分理解需求
  2. 划分有效等价类,划分无效等价类
  3. 从有效等价类中抽取其中一个数据进行设计测试用例,从无效等价类中抽取一个数据进行设计测试用例.

 


边界值

边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
边界点:上点,内点,离点
上点:边界上的点
内点:边界内的点
离点:边界值附近的点(闭区间:区间外距离上点最近的点;开区间:区间内距离上点最近的点)
比如6-15前开后闭的区间:上点就是6,15;内点就是10(边界内的值即可);离点就是7,16.
边界值设计测试用例方法
  1. 充分理解需求
  2. 找边界点
  3. 针对边界点设计测试用例

对于6-15的闭区间设计:

上点就是6,15,内点就是13,离点就是5,16 

这就是根据边界值设计出来的测试用例,在工作中,我们通常还要结合等价类设计出的测试用例来进行用例的汇总.


判定表

判定表是一种用于判断某个条件是否满足的表格,通常用于软件测试、质量控制等领域。在判定表中,每个条件都有一个对应的结果,当条件满足时,结果为“是”,否则为“否”。通过比较多个条件的组合结果,可以得出最终的结论.

判定表是另一种表达逻辑判断的工具.

关系:

与(所有条件必须满足,如果一个条件不满足,此时结果为假).

或(满足其中一个条件结果就为真,如果条件全部为假,结果就为假)

恒等(如果条件为真,那么结果一定为真)

非(条件为假,结果才为真).

判定表设计测试用例

  1. 分析所有可能的输入和可能的输出
  2. 找出输入和输出之间的对应关系
  3. 设计判定表
  4. 把判定表对应到每一个测试用例

案例

输入:订单已提交,订单金额大于300,有红包

输出:优惠,不优惠


正交表

正交法的目的是为了减少用例数目,用尽量少的用例覆盖输入的两两组合.

什么是正交表

名词

因素:此次需求的输入(变量)

水平:变量的取值.

性质

每一列中各数字出现的次数一样多,任何两列中的各有序对出现的次数一样多.

如何通过正交表设计测试用例

充分理解需求-> 确定因素水平->画正交表->补充正交表->将正交表转换成测试用例.

给出一个需求:姓名,邮箱,密码,确认密码,验证码必须全部输入,才能进行注册.

因素:姓名,邮箱,密码,确认密码,验证码.

水平:填写,不填写.

通过allpirs画正交表

1.首先将因素水平填写到一个excel表格中.

 

2.将excel表格内容复制到txt文本中,保存到allpairs路径下

 

3. cmd进入到allpairs安装路径下,执行一个命令生成目标文件.

 4.生成正交表

补充一行全是不填写的.


写测试用例

 


场景设计法

两个概念:主事件流和次事件流.

在场景测试法中,主事件流是指用户执行系统的操作序列中最简单的路径,而次事件流则是指用户执行系统的操作序列中除了最简单的路径之外的其他所有路径。

现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者 设计测试用例,是测试用例更容易理解和执行。

典型的应用是是用业务流把各个孤立的功能点串起来,为测试人员建立整体业务感觉,从而避免陷入功能细节忽视业务流程要点的错误倾向.

比如去ATM取款

主事件流:插卡->输密码->选择取款->输入金额->出钞->取卡.

次事件流:就是每个节点可能会发生的其他情况,比如插卡的时候可能卡消磁了,输入密码的时候密码输错了,密码忘记了,选择业务的时候还可以选择余额的查询,出钞的时候ATM可能断电了等等.

把每个节点的可能情况串起来,就是一个测试用例.

这就是把相关联的功能模块串到一起测试,为测试人员建立整体的业务感觉.


错误猜测法

错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。
这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。
错误推测法和目前流行的 探索式测试方法 的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应运于测试。
这个方法的缺点是难以系统化,并且过度依赖个人能力。

面试题

如何模拟弱网

弱网是指网络带宽不足、丢包率高、延迟大等情况,这些情况会影响网络的稳定性和用户体验。弱网测试主要就是对带宽、丢包、延时等进行模拟弱网环境,以验证软件在弱网环境下的表现 .

可以借助许多工具,比如fiddler.

fiddler模拟弱网

打开弱网模式

查看弱网规则

 

 

代表上传1KB花费时间300ms,下载1kb数据,花费时间150ms.


接口如何测试

借助工具postman.

根据http请求方式测试,针对参数进行测试(传递所有测试,传递部分参数,不传参,传递其他参数).


zip命令测试


测试用例万能公式

功能,界面,易用,兼容,安全,网络,中断....

功能:物体:这个物体是用来干嘛的;软件:软件实现功能.

界面:物体:物体的外表材质大小等等;软件:界面,字体大小颜色,页面布局.

易用:(依靠经验)操作简单,使用流畅,人性化.

兼容:物体:除了本质的功能,还有没有其他的功能;软件:操作系统,设备,浏览器版本.

性能:物体:使用寿命;软件:响应时间,吞吐量,并发数.

安全:物体:物体材质是否有毒,物体会不会对人体健康造成威胁;软件:sql注入,xss漏洞,输入有毒的脚本.

网络:软件:2g-5g,弱网,wifi.....


水杯测试用例


微信发朋友圈

 

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

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

相关文章

Java实现的五子棋游戏 ~java.awtjava.swing

文章目录 Java实现的五子棋游戏1.实现效果2.实现源码2.1运行主函数main.java2.2 棋盘布局Chessboard.java3.Algorithm算法 点击下载链接:Java实现的五子棋游戏源码下载 Java实现的五子棋游戏 作业要求: (1)课题代号: …

老Mac电脑安装macOS Ventura实战

前提说明:此实战适用于老旧Mac电脑(2015年之前的,无法在系统设置中升级macOS Ventura系统的电脑)安装macOS Ventura系统! 软件:OpenCore-Patcher-GUI.app.zip 工具:16G U盘、或者移动硬盘&a…

Spring MVC拦截器Interceptor使用(判断用户登录)

文章目录 一 概念二 3步使用三 HandlerInterceptor接口四 代码实现 一 概念 Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验…

superset链接本地数据库

打开图中 选择database 先解释SQLlite的格式 如下 SQLALCHEMY_DATABASE_URI mysql://username:password127.0.0.1:3306/gmall_report’ 请将 username 和 password 替换为实际的 MySQL 数据库的用户名和密码。 mysql则为如下

我有过密接的9个博士

我有过密接的9个博士 是我人生中留下的印迹和谈资 其中一个是中科大少年班的学神 趣讲大白话:多点谈资 【趣讲信息科技196期】 **************************** 我密接过的哪些博士们: 1、科大少年班刘雪峰博士。1998年,创智公司(当…

Banana Pi BPI-R3 Mini:2.5GbE 嵌入式路由器板,MTK7986方案

香蕉派 BPI-R3 Mini Banana Pi BPI-R3 Mini 是一款功能强大的 SBC 路由器板,专为需要高速网络功能的个人和企业而设计。这款路由器是广受欢迎的 Banana Pi R3 路由器板的小兄弟,配备了先进的功能,旨在提供可靠的性能,是需要可靠网…

元宇宙游戏:新瓶换新酒

当你打游戏时,你在打什么? 抛出这个问题,便也抛出了游戏背后的组成——设计、技术、应用。 在元宇宙产业链中最有感知度的,是场景和内容,作为现实世界的模拟与延伸,游戏和社交领域是最先具备实现基础的元…

存储基础知识及相关术语

存储基础知识 前置:存储基本概念 我们现在处于信息时代,每天都在和电脑、手、平板机打交道。我们的工作和生活,已经完全离不开视频、音乐、图片、文本、表格这样的数据文件。 而所有这些数据文件,都需要通过电子设备进行保存&…

Windows控制关机锁屏

原文链接 设置永不关机 新建一个vbs文件,内容如下: Set WshShell WScript.CreateObject("WScript.Shell") do WScript.sleep 60000 WshShell.SendKeys "{ScrollLock}" loop该程序的作用相当于每隔一分钟(60000毫秒&a…

了解MVC、MVP、MVVM模式

前言 在Android开发中,当你梳理完需求后,你要做的并不是马上写下你的第一行代码,而是需先设计好整个项目的技术框架今天,我将全面介绍Android开发中主流的技术框架MVC、MVP 与 MVVM模式,并实例讲解MVP模式&#xff0c…

Android启动优化实践

作者:95分技术 启动优化是Android优化老生常谈的问题了。众所周知,android的启动是指用户从点击 icon 到看到首帧可交互的流程。 而启动流程 粗略的可以分为以下几个阶段 fork创建出一个新的进程创建初始化Application类、创建四大组件等 走Applicatio…

uni-app配置Vant Weapp

uni-app配置vant-------浏览器运行环境下不兼容 1.创建uni-app项目2.创建wxcomponents目录3. 安装vant需要的模块包3.1找一个空文件cmd 进入执行3.1.1通过 npm 安装3.1.2通过 npm 安装 3.2.1获取dist文件 4.将dist内容复制到wxcomponents目录下5.1 使用vant5.1使用button按钮5.…

Qt扫盲-QKeyEvent 键盘事件

QKeyEvent 键盘事件 一、概述二、事件传播三、常用属性1. key()2. modifiers()3. isAutoRepeat()4. text() 四、简单组合键代码 一、概述 QKeyEvent 是Qt 里面描述键盘事件的一个属性类,所有的事件本质上来说其实就是一个信息包,而这个包里面就是有这个…

探索Redis内部数据结构

Redis支持多种数据结构,每种数据结构都有其特定的用途。下面对Redis支持的主要数据结构进行详细阐述: 一、字符串(String) 字符串是Redis最基本的数据结构,可以存储一个字符串或者二进制数据,例如图片、序…

Echarts—词云库(echarts-wordcloud)配置详解和使用(可自定义形状)

词云库的详解 前言安装基本配置详解具体使用步骤(Vue为例)自定义展示形状 前言 我们经常会看到一些网站或者页面有一堆五颜六色的词汇的聚在一块,有大有小的散落着,看着挺好看的; 也许项目中也会涉及到显示一些关键词…

【Linux脚本篇】Linux循环语句-while

目录 🍁while的语法格式 🍁while循环案例 🍃案例一:输出10-1的降序 🍃案例二:输出10的升序和降序 🍃案例三:批量创建用户 🍁内置跳出循环 🍃案例一&#xff1…

火山引擎 DataLeap:一个易用、高效的数据目录,是如何搭建的?

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 企业如何找到数据、了解数据以及使用数据? 这离不开数据目录的能力。数据目录有着类似于“字典”的作用,能够帮助数据生产者和使用者快速定位…

ESXI 环境搭建和配置

ESXI 环境搭建和配置 ESXI简介 ESXi专为运行虚拟机、最大限度降低配置要求和简化部署而设计。只需几分钟时间,客户便可完成从安装到运行虚拟机的全过程,特别是在下载并安装预配置虚拟设备的时候。 在VMware Virtual Appliance Marketplace 上有800多款…

RabbitMQ 安装

目录 一、安装RabbitMQ1、Linux 安装⑴、官网rpm包安装①、下载rpm安装包官网下载erlangrabbitmq packagecloud下载erlangrabbitmq ②、安装 erlang③、安装rabbitmq ⑵、packagecloud快速安装⑶、添加用户账号及权限并登陆⑷、卸载erlang与rabbitmq卸载rabbitmq卸载erlang 2、…

积聚产业发展新动能|2023开放原子全球开源峰会OpenAtom OpenHarmony分论坛成功举办

6 月 12 日,以“OpenHarmony 共建开放,共享未来”为主题的 2023 开放原子全球开源峰会 OpenAtom OpenHarmony(以下简称“OpenHarmony”)分论坛在北京北人亦创国际会展中心第一报告厅圆满落幕。开放原子开源基金会理事长孙文龙、华…