测试用例的编写方式

学习目标

  1. 能对穷举场景设计测试点
  2. 能对限定边界规则设计测试点
  3. 能对多条件依赖关系进行设计测试点
  4. 能对于项目业务进行设计测试点

目录

  • 等价类划分法
  • 案例

等价类划分

  • 说明:在所有测试数据中,具有某种共同特征的数据集合进行划分
  • 分类
    有效等价类:满足需求的数据集合
    无效等价类:不满足需求的数据集合
  • 步骤
    1、明确需求
    2、确定有效和无效等价类
    3、提取数据编写测试用例

案例1

需求:验证QQ账号的合法性
要求:6~10位自然数

用例编号用例标题项目/模块优先级前置条件测试步骤测试数据预期结果
qq_001合法(8位自然数)QQP01、打开验证程序1、输入账号
2、点击验证
账号:12345678合法
qq_002不合法(4位自然数)QQP11、打开验证程序1、输入账号
2、点击验证
账号:1234不合法
qq_003不合法(12位自然数)QQP11、打开验证程序1、输入账号
2、点击验证
账号:123456789012不合法
qq_004不合法(8位非自然数)QQP11、打开验证程序1、输入账号
2、点击验证
账号:1234567A不合法

案例2

需求:验证某城市电话号码正确性
要求:1、区号:空或者是三位数字
2、前缀码:非“0”且非“1”开头的三位数字
3、后缀码:四位数字

分析:

维度名称有效无效
长度区号1、空
2、3位
2位
前缀码3位2位
后缀码4位3位
类型区号数字非数字
前缀码数字非数字
后缀码数字非数字
规则区号//
前缀码2开头1、0开头
2、1开头
后缀码//

1、正向(正确有效的用例):2条【一次尽可能将多个正确数据组合】空+2开头的3位数字+4位数字、3位数字+2开头的3位数字+4位数字
2、逆向(错误无效的用例):8条【一次只能覆盖1个,否则无法区分错误来源】

用例编写:

用例编号用例标题项目/模块优先级前置条件测试步骤测试数据预期结果
tel_001合法(区号为空+其他正确)电话P01、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:空/NULL
2、前缀:234
3、后缀:1234
合格
tel_002合法(区号为3位数字+其他正确)电话P01、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:123
2、前缀:234
3、后缀:1234
合格
tel_003不合法(区号2位数字+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:12
2、前缀:234
3、后缀:1234
不合格
tel_004不合法(前缀2位数字且非0非1开头+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:123
2、前缀:23
3、后缀:1234
不合格
tel_005不合法(后缀3位数字+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:123
2、前缀:234
3、后缀:123
不合格
tel_006不合法(区号3位非数字+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:12A
2、前缀:234
3、后缀:1234
不合格
tel_007不合法(前缀3位非数字且非0非1开头+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:123
2、前缀:23a
3、后缀:1234
不合格
tel_008不合法(后缀4位非数字+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:123
2、前缀:234
3、后缀:123A
不合格
tel_009不合法(前缀3位数字0开头+其他正确)电话P11、打开电话验证程序1、输入区号
2、输入前缀
3、输入后缀
4、点击验证
1、区号:123
2、前缀:023
3、后缀:1234
不合格
tel_010 不合法(前缀3位数字1开头+其他正确) 电话 P1 1、打开电话验证程序 1、输入区号
2、输入前缀
3、输入后缀
4、点击验证 1、区号:123
2、前缀:123
3、后缀:1234 不合格

回顾知识

1、软件测试的定义:使用技术手段验证软件是否满足需求
2、说出7种测试分类的区别:

  1. 阶段划分:
    (1)单元测试:测试对象(源代码)
    (2)集成测试:测试对象(接口)
    (3)系统测试:测试对象(功能、非功能【易用、兼容、安全、性能】、文档)
    (4)验收测试:内测和公测

  2. 代码可见度划分
    (1)黑盒测试:看不见程序源代码,针对程序的功能和非功能进行验证
    (2)灰盒测试:看见部分代码(接口),针对程序接口进行测试
    (3)白盒测试:完全看见源代码,针对程序源代码进行测试

3、说出质量模型的重点5项:
功能、性能、兼容、易用、安全
4、说出测试流程的6个步骤:
(1)需求评审
(2)测试计划编写
(3)用例设计
(4)用例执行
(5)缺陷管理
(6)测试报告

5、说出测试模板8个要素
(1)用例编号:项目简称_模块_编号
(2)用例标题:预期结果(测试点)
(3)项目/模块:所属项目模块
(4)优先级:P0~P4(P0最大)
(5)前置条件:执行用例预置操作
(6)测试步骤:执行步骤
(7)测试数据:步骤用的关键数据
(8)预测结果:期望结果

6、用例设计
(1)什么是测试用例?
执行测试的文档
(2)用例的作用:
防止漏测、执行标准
(3)测试方法:
解决穷举问题:等价类划分方法(步骤:明确需求;划分等价;提取数据,编写用例)

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

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

相关文章

线程池参数如何设置

线程池参数设置 hello丫,各位小伙伴们,好久不见了! 下面,我们先来复习一下线程池的参数 1、线程池参数有哪些? corePoolSize(核心线程数):线程池中的常驻核心线程数。即使这些线程…

Java与Kotlin语言的特色之处

一、Java特色之处: 1.多异常捕获 一个try块可能捕获到多个异常,可以使用多个catch块分别处理每个异常,也可以使用一个catch块处理多个异常(多个异常使用管道符|分隔)。 多个catch块代码: try{ }catch(IOExc…

rancher踩坑日志-删除rancher接入后创建namespace失败(还继续走rancher的逻辑)

创建新的命名空间报错 [haimaKS-STAG-NODE01 ~]$ kubectl create namespace test01 Error from server (InternalError): Internal error occurred: failed calling webhook "rancher.cattle.io.namespaces.create-non-kubesystem": Post "https://rancher-web…

拥抱Linux,拥抱开源,拥抱未来

拥抱Linux,拥抱开源,拥抱未来 在这一系列的Linux专栏博客中,我们从入门到进阶,从技能到生态,再到未来展望,全方位地探讨了Linux的方方面面。Linux已经成为了我们数字生活中不可或缺的一部分,它正在深刻地影响和改变着我们的世界。 1. Linux:技术的力量 Linux不仅仅是一个操作…

FMEA与各设计工具之间有哪些联系——SunFMEA软件

在设计领域,FMEA与其他设计工具之间存在着紧密的关系,这些工具共同支持设计师在产品开发的各个阶段做出明智的决策,今天SunFMEA软件和大家一起了解FMEA与各设计工具之间的联系。 首先,FMEA与CAD(计算机辅助设计&#…

搭建PyTorch神经网络进行气温预测(手写+调包两种方法)(保证学会!)+找到神经网络的最优情况

代码上有注释!!!!!! 本篇主要包括三大部分: 第一部分:导入数据集导入第三方库数据集简单介绍与可视化数据集简单预处理 第二部分:手写神经网络代码实现气温预测&#…

论文学习D2UNet:用于地震图像超分辨率重建的双解码器U-Net

标题::Dual Decoder U-Net for Seismic Image Super-Resolution Reconstruction ——D2UNet:用于地震图像超分辨率重建的双解码器U-Net 期刊:IEEE Transactions on Geoscience and Remote Sensing 摘要:从U-Net派生…

linux中rpm包与deb包的区别及使用

文章目录 1. rpm与deb的区别2. deb软件包的格式和使用2.1 deb软件包命令遵行如下约定2.2 dpkg命令2.3 apt-命令 3. Unix和Linux的区别Reference 1. rpm与deb的区别 有的系统只支持使用rpm包安装,有的只支持deb包安装,混乱安装会导致系统问题。 关于rpm和…

手拉手安装启动Kafka2.13

启动Kafka本地环境需Java 8以上 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 Kafka启动…

【ubuntu20.04】安装GeographicLib

下载地址 GeographicLib: Installing GeographicLib 我们是ubuntu20.04 ,所以下载第一个 GeographicLib-2.3.tar.gz 接着跟着官方步骤安装,会出错!!!!马的 官方错误示例:tar xfpz Geographi…

无重复字符串的最长子串

题目描述:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串的长度。 第一次提交记录 class Solution:def lengthOfLongestSubstring(self, s: str) -> int:if not s:return 0lookup set()left res 0for right in range(len(s)):while s…

面试流程梳理

关于面试 经过组织者精心设计的 以交谈和观察为主要手段 评价知识,能力和经验,综合素质 HR如何拿到简历? 员工内推 猎头推荐 HR收集(主动搜索,接收邮件) 面试的环节和流程 一面(基础知识为主&#xff0…

【Windows】如何在Windows系统上用Sudo

【背景】 研究本地化部署AI时,环境安装需要用sudo形式,考虑如何在Windows下能够使用Sudo命令。 【分析】 要使用sudo,就需要在windows环境下安装linux子系统。 【解决方法】 BIOS开启Intel虚拟化技术,在CPU选项中。我的是联想…

基于Springboot的箱包存储系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的箱包存储系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…

MyBatis 模糊查询 like 语句写法

第 1 种&#xff1a;在 Java 代码中添加 sql 通配符。 string wildcardname “%smi%”; list<name> names mapper.selectlike(wildcardname);<select id”selectlike”>select * from foo where bar like #{value} </select>第 2 种&#xff1a;在 sql 语…

一辆新能源汽车需要多少颗传感器?

随着科技的发展和环保意识的日益提高&#xff0c;新能源汽车&#xff08;包括纯电动汽车、混合动力汽车等&#xff09;在全球范围内越来越受到欢迎。这些汽车不仅减少了碳排放&#xff0c;还推动了汽车产业的创新。然而&#xff0c;这些高科技汽车的背后&#xff0c;隐藏着许多…

9.vector的使用介绍和模拟实现

1.vector的介绍及使用 1.1 vector的介绍 vector的文档介绍 vector是表示可变大小数组的序列容器。 就像数组一样&#xff0c;vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问&#xff0c;和数组一样高效。但是又不像数组&#xff0c…

Another Redis Desktop Manager下载安装使用

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

基因组组装:Hifiasm 使用教程

简介 Hifiasm[1] 是一个快速的单倍型解析 de novo 组装软件&#xff0c;最初设计用于 PacBio HiFi 读取。其最新版本可以通过利用超长的 Oxford Nanopore 读取支持端粒到端粒的组装。Hifiasm 可以生成单样本端粒到端粒的组装&#xff0c;结合了 HiFi、超长和 Hi-C 读取&#xf…

【XR806开发板试用】自带mqtt的调试教学

1、下载代码 mkdir xr806_openharmony cd xr806_openharmony repo init -u ssh://gitgitee.com/openharmony-sig/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify -m devboard_xr806.xml repo sync -c repo forall -c git lfs pull **最近仓库在整合&#xff…