当前位置: 首页 > news >正文

测试用例篇

1.测试用例的意义

测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。
测试用例的意义是为了帮助测试人员了解测什么,怎么测
eg:水杯的测试用例
在这里插入图片描述

测试用例的常见测试点

●功能测试: 对产品的功能设计测试用例(来源是需求文档/日常生活经验)
●性能测试: 功能测试没有问题不代表性能好(极端情况:高并发量,响应时间等等)
● 界面测试: 每个元素的大小, 颜色, 材质, 形状; 页面跳转, 文字的错别字, 遮挡等需要测试
● 兼容性测试: 软件不同的版本是否兼容, 不同浏览器, 不同的系统版本, 数据兼容性
● 易用性测试: 产品是否具备简单易上手的属性
● 安全测试: 用户的隐私数据是否加密(注册场景, 接口返回值等等)(用户密码在界面展示/接口参数传递数据库里对隐私数据是否加密, SQL注入)

具体的设计测试用例的方法

等价类

根据需求将输入划分为若干个等价类,从每个等价类选出一个测试用例,若测试用例通过,则认为所代表的等价类测试通过。解决了不能穷举测试的问题。
在这里插入图片描述
步骤:

  1. 确认有效等价类和无效等价类
  2. 编写测试用例
    ● 输入长度为6-18位的密码,具体为10位
    ● 输入长度小于6位的密码,具体为1位
    ● 输入长度为大于18位的密码,20位

边界值

边界值指: 有效边界 + 无效边界
成绩大于60可以领奖 边界值: 60(无效边界) 61(有效边界)

判定表

使用场景:输入条件的组合对应不同的结果。
判定表设计测试用例得分步骤

  1. 确认输入条件和输出条件
  2. 找出输入条件和输出条件之间的关系
  3. 画判定表
  4. 根据判定表编写测试用例

案例
当订单使用了红包或订单金额大于300元,则该订单是优惠订单,否则是不优惠的订单。

  1. 确认输入条件和输出条件
    输入条件:红包A 金额大于300元B 订单已提交C
    输出条件:有优惠1 无优惠2

  2. 找出输入条件和输出条件之间的关系
    先确定输入条件之间的可能组合关系
    最后根据组合给出对应的输出结果
    在这里插入图片描述

  3. 画判定表
    在这里插入图片描述

  4. 根据判定表编写测试用例
    在这里插入图片描述

判定表法和因果法步骤类似,不过因果法里多了一步叫做“画因果图”

场景设计法

就是因为很多软件不同的场景, 都是基于不同事件的触发。不同事件的触发,会导致场景走向不同的 时间流 / 场景。场景设计法 就是把不同的功能点 给串起来了,形成一个场景。 要注意的是:不同的功能点有不同的输出,不同的输出就会导致不同的测试场景。还可以认为是将一个功能集成模块 给 拆分成一个个单独功能模块,进行设计测试用例。

在这里插入图片描述

正交法

正交实验设计法指从大量的实验中挑选出适量的,有代表性的点,依据“正交表”合理的设计测试用例
在这里插入图片描述
正交表的表示 L4(2^3),4代表4组实验,3代表的是因素数,2代表每个因素数对应的水平数。
正交表的特性:

  1. 每一列中,不同的数字出现的次数相等。
  2. 任意两列中数字的排列方式齐全而且均衡。

根据正交表设计测试用例的步骤:

  1. 找出 因素 和 水平
  2. 生成正交表 -》(借助生成正交表的工具:allparis)
  3. 根据正交表来编写测试用例
  4. 补充可能存在遗漏但是非常重要的测试用例。
http://www.lryc.cn/news/22635.html

相关文章:

  • 自动驾驶自主避障概况
  • Python实用的库排名…
  • 【YOLO系列】YOLOv4论文超详细解读1(翻译 +学习笔记)
  • 【神经网络】Transformer基础问答
  • 制定防火墙策略的步骤和建议
  • 新必应(New Bing)国内申请与使用教程
  • 博客系统——项目测试报告
  • Macbook M1 安装PDI(Kettle) 9.3
  • 机器学习——模型评估
  • react react-redux学习记录
  • nodejs环境配置
  • 数据治理之元数据管理Atlas
  • 15 Nacos客户端实例注册源码分析
  • C++将派生类赋值给基类(向上转型)
  • 使用Platform Designer创建Nios II 最小系统
  • CD销售管理系统
  • 华为OD机试模拟题 用 C++ 实现 - 玩牌高手(2023.Q1)
  • Hive 的Stage如何划分?
  • 《嵌入式应用开发》实验一、开发环境搭建与布局(上)
  • 电子科技大学软件工程期末复习笔记(五):生产率和工作度量
  • 400G光模块知识大全
  • 【Linux】零成本在家搭建自己的私人服务器解决方案
  • Python 多线程、多进程和协程
  • Xml 注解
  • 【CSS文字滚动】CSS实现文字横向循环无缝滚动,鼠标移入暂停移出继续(附实测源码)
  • 不使用implements关键字实现实现类(类似于mapper)
  • antd4里table的滚动是如何实现的?
  • 抓取namenode 50070 jmx的指标信息
  • aspnetcore-browser-refresh.js和Visual Studio Browser Link
  • hadoop 集群常用命令(学习笔记) —— 筑梦之路