软测入门(二)测试用例、自动化测试理念

news2025/1/12 3:00:36

测试用例(test case)

特性

  • 有效性:测试用例能够被使用,且被不同的人员使用测试结果一致
  • 可复用性:如回归测试的使用
  • 可评估性
  • 可管理性

八大要素

在这里插入图片描述

  • 测试编码:方便归档和查询
  • 测试模块/功能
  • 预置条件:(测试前提条件)
  • 测试输入
  • 预期输出
  • 操作步骤
  • 测试用例标题(目的)
  • 级别(高、中、低)
  • 其他要素:用例设计日期、设计者、开发人员、测试结果、测试类型(功能、性能、压力等)

等价类划分法

  • 有效等价类(有效输入)
  • 无效等价类(无效输入)

边界值

对输入或输出边界值进行测试,如4位数字,那么可选取9999、1000附近几个边界值进行输入

等价类划分和边界值法适用于普通文本输入框,因为可输入的内容很广泛

因果图法

利用图解法分析输入的各种组合情况,从而设计测试用例的方法,适合于检查程序输入条件的各种组合情况。

在这里插入图片描述

因果关系–约束条件

在这里插入图片描述

  • 找出所有的原因
  • 找所有的结果
  • 多种原因和结果的组合

判定表法

也称为决策表,可以理解为因果图的最终产物,将复杂问题按照各种可能的情况全部列举出来,简明并且避免遗漏。用判定表能设计出完整的测试用例集合

正交表法

定义:使用最小的测试过程集合,获取最大的测试覆盖率。

原因:由于条件和结果过多,不可能穷尽组合测试。

方法:可以采用allpairs工具,生成正交的可选组合的测试用例。

  • 利用excel准备一个表格

  • 将表格中的内容贴到txt文本中

    在这里插入图片描述

  • 通过allpairs命令生成,测试用例结果即可。语法: allpairs 源文件 > 目标文件

    在这里插入图片描述

场景法

从起点,通过一系列操作步骤,达成某一结果,到终点的过程测试,场景法主要用于冒烟测试。

分为基本流和备用流

在这里插入图片描述

流程分析法

画出业务流程,写测试用例。

错误推断法

凭借经验和直觉推测程序中可能存在的各种错误,从而有针对性的设计测试用例。

测试力度&用例方法总结

力度

  • 简单:仅仅测试刚要,过于简单
  • 复杂:包含具体输入项、每个步骤、期待结果,过于复杂浪费时间成本
  • 中庸:一般介于两者之间即可。

总结

  • 先关注主要功能的业务流程、逻辑是否正确:场景法

  • 需要输入数据的地方:等价类划分法

  • 任何情况都可使用边界值法

  • 若程序包含输入条件的组合情况:因果图法和判定表法

  • 对于配置类软件,选项过多,需要考虑参数的很多组合情况:正交表法

缺陷报告

当发现了软件的缺陷和错误时,需要整理报告发送给相关人员处理。

一般在公司内部会有缺陷报告的书写模板,或可能使用高效管理bug的平台。

自动化测试

定义

  • 程序测试程序
  • 代码代替思维
  • 脚本代替人工

目的就是:更高的质量和效率。

收工&自动化

二者并不对立,什么手段效率高就使用什么手段。两者是互补的。

分类

在这里插入图片描述

优势

  • 提高测试效率
  • 避免测试人员重复劳动
  • 回归测试方便可靠
  • 自动化脚本可复用
  • 支持多环境下的测试

劣势

  • 不能取代手工测试
  • 测试不容易发现界面、布局问题
  • 自动化测试工具是死的,不具备任何想象力
  • 开展前期,自动化测试投入成本高、风险大,且对测试员的技术、工具契合度都有要求

自动化测试分层

在这里插入图片描述

单元测试使用自动化测试,投入和收益成正比形式。

什么项目适合自动化测试

  • 项目变动少
  • 项目周期足够
  • 需要重复运行测试
  • 回归测试
  • 能够自动编译、发布的系统

常用工具

在这里插入图片描述

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

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

相关文章

2023年功能测试还值得入行吗?

前言 鉴于笔者从13年入行IT行业,经历了只有开发没有测试的阶段,经历了14年只要会基本的功能测试在一线就能薪资过万的阶段,经历了17年只要会一点自动化,会一点性能就能蒙骗过面试官的阶段,更经历了19年所有面试官对于…

操作系统发展历程

手工操作阶段(此阶段无操作系统) 用户在计算机上算题的所有工作都要人工干预。该阶段有两个突出缺点: 用户独占全机,虽然不会出现因资源已被其他用户占用而等待的现象,但资源利用率低。 CPU等待手工操作,CPU的利用不充分 唯一的…

【虚拟机搭建】win11搭建虚拟机两种方式:【virtualbox+vagrant】【VMware】(附centos系统、附安装包)

描述 本教程windows系统搭建虚拟机方式,主要包含两种方式,分别是:【vagrantvirtualbox】和【VMware】推荐大家使用【vagrantvirtualbox】方式进行安装,也可根据自己喜好进行选择本教程安装包 包含三种下载方式,分别是…

关于Could not build wheels for opencv-python-headless, which is...报错的解决方案

在通过最新版pip在线安装package:opencv-python-headless的时候,会产生报错信息,主要为 ERROR: Failed building wheel for opencv-python-headless ERROR: Could not build wheels for opencv-python-headless, which is required to insta…

Active Directory(活动目录)用户登录管理

活动目录用户登录管理 ADManager Plus 通过其预定义的用户登录报告简化了跟踪,监控和整合Active Directory用户登录特定数据的艰巨任务。Active Directory用户登录特定信息,如登录时间,登录历史记录,登录尝试,用户登录…

【钓鱼实测】写bug给new bing和chatGPT查。问他们林黛玉倒拔垂杨柳

BUG 错误代码 #include <iostream> #include <vector> using namespace std; int main() {vector<int> vec{1,2,3,2,4};for (auto iter vec.begin(); iter ! vec.end(); iter ){if (*iter 2) {vec.erase(iter);}}cout << vec.size() << endl…

Elasticsearch:如何正确处理 Elasticsearch 摄取管道故障

在我之前的文章 “Elastic&#xff1a;开发者上手指南” 中的 “Ingest pipeline” 章节中个&#xff0c;我有很多文章是关于 ingest pipeline 的。在今天的文章中&#xff0c;我将重点介绍如何处理在摄取管道中的错误。在我之前的文章 “Elasticsearch&#xff1a;如何处理 in…

Mybatis-Plus 开发提速器:mybatis-plus-generator-ui

Mybatis-Plus 开发提速器&#xff1a;mybatis-plus-generator-ui 1.简介 github地址 &#xff1a; https://github.com/davidfantasy/mybatis-plus-generator-ui 提供交互式的Web UI用于生成兼容mybatis-plus框架的相关功能代码&#xff0c;包括Entity,Mapper,Mapper.xml,Se…

Python(青铜时代)——模块与包

模块 模块是Python 程序架构的一个核心概念 模块好比是 工具包&#xff0c;要想使用这个工具包中的工具&#xff0c;需要使用 import 这个关键字进行导入这个工具包 每一个以扩展名 py 结尾的 Python 源代码文件都是一个 模块 在模块中定义的 全局变量、函数 都是模块能够提…

Laravel-admin之自定义操作日志

laravel-admin是封装性极好的框架&#xff0c;自带的就有操作日志的记录&#xff0c;但是对于非开发人员可能看不懂这个日志&#xff0c;所以就想着给修改一下&#xff0c;以谁修改了什么&#xff0c;谁删除了什么&#xff0c;谁审核了什么&#xff0c;谁添加了什么类似&#x…

【java web篇】数据库连接池Driud的使用

&#x1f4cb; 个人简介 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是阿牛&#xff0c;全栈领域优质创作者。&#x1f61c;&#x1f4dd; 个人主页&#xff1a;馆主阿牛&#x1f525;&#x1f389; 支持我&#xff1a;点赞&#x1f44d;收藏⭐️留言&#x1f4d…

Apache DolphinScheduler 3.1.4 版本发布,修复一键安装报错问题

点击蓝字 关注我们2 月 27 日&#xff0c;Apache DolphinScheduler 发布了 3.1.4 版本。此版本共计修复 11 个 bug&#xff0c;并更新 1 个文档修复。其中的较为重要的 Bug fix 为&#xff1a;修复任务唤醒失败会阻塞事件处理 (#13466)修复 k8s 任务运行失败 (#13348) 修复 Me…

NodeJs 中的 HTML 模板

&#x1f482; 个人网站:【海拥】【摸鱼游戏】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 想寻找共同学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 HTML 模板是一种允许我…

信息系统基本知识(二)

大纲 信息系统与信息化信息系统开发方法常规信息系统集成技术软件工程新一代信息技术信息系统安全技术信息化发展与应用信息系统服务管理信息系统服务规划企业首席信息管及其责任 1.3 常规信息系统集成技术 系统集成&#xff1a;是指将计算机软硬件、网络通信等技术和产品集…

金三银四,助力你的大厂梦,2023年软件测试经典面试真题(1)(共3篇)

前言 金三银四即将到来&#xff0c;相信很多小伙伴要面临面试&#xff0c;一直想着说分享一些软件测试的面试题&#xff0c;这段时间做了一些收集和整理&#xff0c;下面共有三篇经典面试题&#xff0c;大家可以试着做一下&#xff0c;答案附在后面&#xff0c;希望能帮助到大…

如何实现双轮差速底盘躲避悬崖的功能?

1. 功能说明 本实验使用的样机为R023样机小型双轮差速底盘。在样机前方安装3个近红外传感器 &#xff0c;实现机器人躲避悬崖、在某平台上移动时不会掉下去的效果。 2. 电子硬件 在这个示例中&#xff0c;我们采用了以下硬件&#xff0c;请大家参考&#xff1a; 主控板Basra&…

C/C++每日一练(20230301)

目录 1. 冒泡排序法排序 ★ 2. 有效的数独 ★★ 3. 不同的二叉搜索树 II ★★ 附录 二叉搜索树 1. 冒泡排序法排序 输入n&#xff08;1≤n≤10&#xff09;个整数&#xff0c;用冒泡排序法对其从小到大排序&#xff0c;共进行n-1趟&#xff0c;要求输出每一趟的排序情…

操作系统页表

页和段的区别 页式&#xff0c;一个程序的各页是根据你的程序空间连续编址的&#xff0c;程序地址空间只有一维&#xff1b; 而段式&#xff0c;一个程序拆分成各段&#xff0c;独立编址&#xff08;各段都从零开始编址&#xff09;&#xff0c;程序地址空间有两维。 例如一…

人工智能高等数学--微积分_导数意义_求导公式_绝对值函数_relu函数_导数物理意义_几何意义---人工智能工作笔记0025

实际上这里看了看,这些数学的概念,有一定作用,但是综合来看,也可以先把人工智能课程都看一遍,大概知道怎么回事, 带着目的再来看人工智能的高等数学部分,这里,这些内容很花时间... 首先看人工智能用到的数学中的微积分~ 首先看这里的导数是什么意思? 其实就是,导数的公式是…

Ajax学习笔记01

引入 翻译成中文就是“异步的Javascript和XML”。即使用Javascript语言与服务器进行异步交互&#xff0c;传输的数据为XML&#xff08;当然&#xff0c;传输的数据不只是XML&#xff09;。 AJAX 不是新的编程语言&#xff0c;而是一种使用现有标准的新方法。 AJAX 最大的优点…