设计测试用例

1.万能公式设计测试用例

  1. 设计测试用例的外能思路
    问:测试用例是不是越多越好?
    答:测试用例并不是越多越好,测试用例能够提高系统测试覆盖率就是好的测试用例。

  2. 万能功能(6个)
    功能测试+界面测试+性能测试+兼容性测试+易用性测试+安全测试
    设计测试用例通常使用脑图来设计
    设计测试用例的要素:测试环境、测试步骤、测试数据、预期结果

  3. 对水杯进行测试用例设计
    ①功能测试(水杯的功能是装水、喝水)
    水杯是否可以装满水、水杯是否能装热水、水杯是否能装一半的水,水杯不漏水、水杯是否烫手
    ②界面测试(形状、大小、材质、颜色、外观)
    水杯的形状是否符合产品说明,水杯的大小是否符合产品说明,水杯的材质是否符合产品说明,水杯颜色是否符合产品说明,水杯的外观是否完美完整
    ③性能测试
    水杯是否耐高温、水杯的耐摔性、水杯的抗腐蚀性、水杯的抗压性
    ④兼容性测试
    水杯能否装水、水杯能否装果汁等其他液体
    ⑤易用性测试
    倒水是否方便、喝水是否方便、携带是否方便
    ⑥安全测试
    材质是否健康,材质是否容易爆炸,材质在高温的情况下是否散发毒性,材料遇到一些特殊的液体是否具有毒性

  4. 对非软件的东西设计测试用例
    ①功能测试
    梳理该东西功能是什么
    ②界面测试
    大小、形状、颜色、材质+整体来看
    ③性能测试
    耐热、耐冻、耐摔
    ④兼容性测试
    是否兼容其他物质材料
    ⑤易用性测试
    测试该物品是否具备简单易上手的特性
    ⑥安全测试
    针对物品来说,考察物品是否有毒有害,或者在其他干扰下是否有毒有害。

  5. 对软件设计测试用例
    ①功能测试
    注册场景:注册+登录,想象日常使用中的注册场景有哪些,来针对这些功能发散性的设计测试用例
    ②界面测试
    能进到的都需要进行测试,文字/输入框/图片/下拉框,文字是否存在错别字,病句,折行,折叠,重叠
    ③性能测试
    响应时间,几千万个人同时访问页面
    ④兼容性测试
    系统版本,终端,浏览器等
    ⑤易用性测试
    需要具备便捷、简单、易上手的属性,符合用户的使用习惯
    ⑥安全测试
    SQL注入,XSS漏洞、越权

2. 设计测试用例的方法

2.1 等价类

使用较少的测试用例达到符合的系统测试覆盖
概念:针对需求输入范围划分成若干个等价类,从其中一个等价类里面取出一个用例,若该测试用例测试通过,则认为该测试用例所在的等价类通过。
步骤:①确定有效等价类和无效等价类;②编写测试用例
有效等价类:针对需求来说是有效且有意义的数据构成的集合
无效等价类:针对需求来说是无效且没有意义的数据构成的集合
例1:需求为姓名长度是6到200位,应该如何设计测试用例?
①确定有效等价类、无效等价类
有效等价类:6~200
无效等价类:小于6、大于200
②编写测试用例
I.输入6~200位的字符:输入100位、输入50位
II.输入小于6位的字符:输入0位、输入3位
III.输入大于200位的字符:输入300位、输入400位
例2:针对需求密码是6~20位数字来设计无效等价类?
答:长度:针对长度来设计无效等价类;类型:数字、字符串、…、特殊字符等

2.2 边界值

边界值法通常是对等价类的补充
设计边界值的测试用例时需要加上边界值和次边界值
例:6~200位
6和200时边界值
5和7时次边界值
199和201时次边界值
【边界值+次边界值 黑盒测试】

2.3 判定表法

有一个测试用例叫根据因果图画判定表,那么因果图的意义是什么?
答:我认为因果图画判定表很多余,而且因果图在实际设计测试用例并没有多大意义。

一种表达逻辑判断的工具 ,针对输入的组合
适用场景:需要考虑输入之间的组合关系,不同的组合关系对应的输出结果不同。
步骤:
①确认输入条件和输出条件
②找出输入条件和输出条件之间的关系
③画判定表
④根据判定表编写测试用例

2.4 正交法

证交法需要用到正交表
因素数:输入的条件
水平数:输入条件对应的结果(不是输出条件)

问:正交表的特性
(1)每一列中,不同数字出现的次数相等
(2)任意两列中数字的排列方式齐全而且均衡

设计正交表有专门的工具:allparis
通过正交法设计测试用例的步骤:
①找出因素数和水平数
②通过allpairs工具生成正交表
③根据正交表来编写测试用例
④补充测试用例(因为正交表生成的可能遗漏一些)
例:需求是 用户注册信息填写,姓名,邮箱,密码,确认密码,验证码
①找到因素数和水平数
因素数:姓名、电子邮箱、密码、确认密码、验证码
水平数:填写、不填写
②使用allparis工具生成正交表
注意qallpairs生成的正交表和实际的正交表会有出入,但是不影响使用allpairs设计测试用例
③根据正交表编写测试用例:填写姓名,全部填写,填写姓名,不填写邮箱…

如何使用allpairs来生成测试用例?

  1. 将因素数和水平数写入Excel
  2. 复制Excel中的因素书和水平数,直接粘贴到allpairs目录下创建一个新的文本文件,直接保存,不要做任何操作
  3. 使用allpairs命令来生成正交表文件

2.5 场景设计法

主要分为基本事件流和多个备用事件流
编写测试用例,根据备用事件流编写测试用例

2.6 错误猜测法

以来测试人员的个人工作经验和积累

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

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

相关文章

解决xcode 运行不老iPhone 15 iOS 17.1 设备的问题

问题 最近要查看一下ios 17.1的设备的性能,但是当前版本的Xcode运行不了 解决方法 1、更新Xcode版本到15.1以上 2、更新完成后,大概率出现这个情况 原因:在app Store中更新到Xcode15后,运行不了模拟器和真机.需要下载iOS 17对应的模拟器.&…

Linux 一键部署二进制Gitea

gitea 前言 Gitea 是一个轻量级的 DevOps 平台软件。从开发计划到产品成型的整个软件生命周期,他都能够高效而轻松的帮助团队和开发者。包括 Git 托管、代码审查、团队协作、软件包注册和 CI/CD。它与 GitHub、Bitbucket 和 GitLab 等比较类似。 Gitea 最初是从 Gogs 分支而来…

python报错A value is trying to be set on a copy of a slice

加入.copy()即可避免该报错提示 原代码: df5df4.drop_duplicates() print(df5.shape)df5[班型中文名称]df5[班型名称]-A print(df5.head()) 输出结果: 修改后代码: df5df4.drop_duplicates().copy() print(df5.shape)df5[班型中文名称]df…

通过 Higress Wasm 插件 3 倍性能实现 Spring-cloud-gateway 功能

作者:韦鑫,Higress Committer,来自南京航空航天大学分布式系统实验室 导读:本文将和大家一同回顾 Spring Cloud Gateway 是如何满足 HTTP 请求/响应转换需求场景的,并为大家介绍在这种场景下使用 Higress 云原生网关的…

一个屌丝程序员的分享

目录 闲扯 关于chatgpt的看法 关于学习工作之外的事情 关于提升自我,避免内耗的事情 写在最后 闲扯 现在是2023.11.8日晚上10.37分,刚结束完今天的任务,今天过的很累,今年过的很快,今年基本过的也很不如意&#x…

不常用但是必会的Ubuntu 关机命令

文章目录 shutdown语法shutdown命令用法shutdown -h扩展参数消息参数shutdown 关机流程shutdown -H 关机流程shutdown -P关机流程 shutdown命令特别提醒推荐阅读 对于常年保持在线服务的服务器系统,通常关机指令不会用到,即便有需要用到,也是…

adb 基本命令合集

1.获取所有的包信息&#xff1a; adb shell pm list packages com.yu.weskul 2.清除APP缓存 adb shell pm clear <package-name> 3.查看当前应用及Activity adb shell dumpsys window | findstr "mCurrentFocus" 4.查看应用详细信息 adb shell dumpsys pack…

eventbus,在this.$on监听事件时无法在获取数据

问题&#xff1a;vue中eventbus被多次触发&#xff0c;在this.$on监听事件时&#xff0c;内部的this发生改变导致&#xff0c;无法在vue实例中添加数据。 项目场景 一开始的需求是这样的&#xff0c;为了实现两个组件(A.vue ,B.vue)之间的数据传递。 页面A&#xff0c;点击页面…

sql_lab之sqli中的宽字节注入(less32)

宽字节注入&#xff08;less-32&#xff09; 1.判断注入类型 http://127.0.0.3/less-32/?id1 http://127.0.0.3/less-32/?id1 出现 \’ 则证明是宽字节注入 2.构成闭环 http://127.0.0.3/less-32/?id1%df -- s 显示登录成功则构成闭环 3.查询字段数 http://127.0.0.3/…

7. 结构型模式 - 代理模式

亦称&#xff1a; Proxy 意图 代理模式是一种结构型设计模式&#xff0c; 让你能够提供对象的替代品或其占位符。 代理控制着对于原对象的访问&#xff0c; 并允许在将请求提交给对象前后进行一些处理。 问题 为什么要控制对于某个对象的访问呢&#xff1f; 举个例子&#xff…

Ubuntu 常用命令之 mkfs 命令用法介绍

&#x1f4d1;Linux/Ubuntu 常用命令归类整理 mkfs 是在 Linux 和其他 Unix-like 系统中用于创建文件系统的命令。在 Ubuntu 系统中&#xff0c;mkfs 命令也是用于创建文件系统的。mkfs 是一个包装器&#xff0c;它会根据用户指定的文件系统类型调用相应的程序。 mkfs 命令的…

Guava的TypeToken在泛型编程中的应用

第1章&#xff1a;引言 在Java世界里&#xff0c;泛型是个相当棒的概念&#xff0c;能让代码更加灵活和类型安全。但是&#xff0c;泛型也带来了一些挑战&#xff0c;特别是当涉及到类型擦除时。这就是TypeToken大显身手的时候&#xff01; 作为Java程序员的咱们&#xff0c;…

Linux下统计多线程应用程序CPU 核心绑定信息

文章目录 自定义多线程压缩打包脚本 Linux下统计多线程应用程序CPU 核心绑定信息 对于高性能应用程序尤其是计算资源密集型应用通常通过cpu 核绑定&#xff08;即CPU 亲和性affinity &#xff09;避免操作系统动态分配核心&#xff0c;来提升CPU利用率&#xff0c;提升应用程序…

【ITK库学习】使用itk库进行图像配准:内插器(插值)

目录 1、itkNearestNeighborInterpolateImageFunction 最近点插值2、itkLinearInterpolateImageFunction 线性插值3、itkBSplineInterpolateImageFunction B样条插值4、itkWindowedSincInterpolateImageFunction 窗口化Sinc插值5、itkRayCastInterpolateImageFunction 投射插值…

Mac OS 13+,Apple Silicon,删除OBS虚拟摄像头(virtual camera),

原文链接: https://www.reddit.com/r/MacOS/comments/142cv OBS为了捕获摄像头视频,将虚拟摄像头插件内置为系统插件了.如下 直接删除没有权限的,要删除他,在mac os 13以后,需要关闭先关闭苹果系统的完整性保护(SIP) Apple 芯片(M1,....)的恢复模式分为两种,回退恢复模式,和…

MySQL数据库 视图

目录 视图概述 语法 检查选项 视图的更新 视图作用 案例 视图概述 视图(View)是一种虚拟存在的表。视图中的数据并不在数据库中实际存在&#xff0c;行和列数据来自定义视图的查询中使用的表&#xff0c;并且是在使用视图时动态生成的。 通俗的讲&#xff0c;视图只保存…

Java学习系列(八)

1.封装 在面向对象程式设计方法中&#xff0c;封装&#xff08;英语&#xff1a;Encapsulation&#xff09;是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。 封装可以被认为是一个保护屏障&#xff0c;防止该类的代码和数据被外部类定义的代码随机访问。 要访…

linux tar打包压缩命令学习

Linux系统中tar是最常用的打包工具&#xff0c;通过打包工具可以压缩/解压 比如常见的压缩包格式 如下&#xff1a; tar 未压缩文件 只是做了一个打包而已tar.gz 使用gzip算法格式压缩的压缩包tar.bz2 bz2格式压缩包tar.xz xz格式压缩 参数介绍 tar 的参数很多 列出几个比较…

K8S 日志方案

目录 一、统一日志管理的整体方案 1、基础日志 2、Node级别的日志 3、集群级别的日志架构 二、安装统一日志管理组件 1、 部署Elasticsearch 2、部署Fluentd 3、部署Kibana 三、日志数据展示 一、统一日志管理的整体方案 通过应用和系统日志可以了解Kubernetes集群内…

【EasyExcel实践】万能导出,一个接口导出多张表以及任意字段(可指定字段顺序)-简化升级版

文章目录 前言正文一、项目简介二、核心代码2.1 pom.xml 依赖配置2.2 ExcelHeadMapFactory2.3 ExcelDataLinkedHashMap2.4 自定义注解 ExcelExportBean2.5 自定义注解 ExcelColumnTitle2.6 建造器接口 Builder2.7 表格工具类 ExcelUtils2.8 GsonUtil2.9 模版类 ExportDynamicCo…