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

五、用例篇

Bug等级:崩溃、严重、一般、次要

bug的生命周期

面试高频考题:跟开发产生争执怎么办?

(1)反思自己,是不是bug描述写的不清楚

(2)站在用户思考问题,反问开发人员:“如果你是用户,你能接受这样的设计吗?”

(3)bug定级一定要有理有据

(4)除了可以提出bug,最好也能给出解决方案

设计测试用例的万能思路

安装卸载测试

针对需要进行部署的软件,除了软件功能外,我们还需要关注软件的能够成功安装和卸载

设计测试用例的方法

基于需求的设计方法

需求文档

测试和开发工作开展的依据:软件需求 用户需求

                                                    需求分析

具体的设计方法

等价类

依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题

缺点:等价类只考虑输入域的分类,没有考虑输入域的组合,需要其他的设计方法和补充

边界值

边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。

边界值包含:边界值+次边界值

判定表法

根据判定表法设计测试用例的步骤:

1.确认需求中输入条件和输出条件

输入:账户包含admin字符,内部链接进入注册页面,提交注册按钮

输出:管理员/无管理员

2.找出输入条件和输出条件之间的关系

3.画判定表

4.根据判定表编写测试用例

1)账户包含admin字符,提交注册按钮,成为管理员账号

2)内部链接进入注册页面,提交注册按钮,成为管理员账号

3)账户包含admin字符,内部链接进入注册页面,无管理员身份

4)账户包含admin字符,内部链接进入注册页面,提交注册按钮,成为管理员账号

5)账户不包含admin字符,非内部链接进入注册页面,未提交注册按钮,无管理员身份

6)账户包含admin字符,无管理员身份

7)内部链接进入注册页面,无管理员身份

8)提交注册按钮,无管理员身份

正交法

正交表因素多种,水平取值只有1和2

最简单的正交表是L4(23),含意如下:“L”代表正交表;L 下角的数字“4”表示有 4 横行,简称行,即要做四次试验;括号内的指数“3”表示有3 纵列,简称列,即最多允许安排的因素是3 个;括号内的数“2”表示表的主要部分只有2 种数字,即因素有两种水平1与2。正交表的特点是其安排的试验方法具有均衡搭配特性。

例子:输入选项有:姓名、电子邮箱、密码、确认密码、验证码。排列组合出来的用例是32个

正交试验设计是研究多因素多水平的一种设计方法,它是根据正交性,由试验因素的全部水平组合中挑选出部分有代表性的点进行实验,通过对这部分试验结果的分析了解全面试验的情况,找出最优的水平组合。正交试验设计是一种基于正交表的、高效率、快速、经济的试验。

设计正交表:

借助工具来实现正交表 allpairs:设计正交表

步骤:

1.根据需求找出因素和水平

因素: 姓名、 电子邮箱、 密码、 确认密码、 验证码

填写 填写 填写 填写 填写

水平: 不填写 不填写 不填写 不填写 不填写

2.将因素和水平写入到excel表格中(表格不需要保存)

建议使用微软自带的Excel软件(建议使用),wps,其他的excel工具(不建议使用)

3.在allpris.exe同级文件夹下创建一个.txt文件,将excel表格中的内容复制到.txt文件中,不要有其他操作直接保存文件

4.使用allparis.exe工具对.txt文件生成正交表文件

allparis.exe test01.txt > res-test01.txt

建议不要提前创建该文件,可以是一个不存在的文件

这是使用allparis工具生成的正交表

allparis工具生成的正交表和实际的正交表会有一定的出入

但是不影响整体的情况

~:表示可以是任意的选项:填写/不填写

5.根据生成好的正交表来编写测试用例,继续将重要的用例补全

1)姓名填写,电子邮箱填写,密码填写,确认密码填写,验证码填写 全部填写

2)姓名填写,电子邮箱不填写,密码不填写,确认密码不填写,验证码不填写

3)姓名不填写,电子邮箱填写,密码不填写,确认密码填写,验证码不填写

4)姓名不填写,电子邮箱不填写,密码填写,确认密码不填写,验证码填写

5)姓名不/填写,电子邮箱填写,密码填写,确认密码不填写,验证码不填写

6)姓名不/填写,电子邮箱不填写,密码不填写,确认密码填写,验证码不填写

7)姓名不填写,电子邮箱不填写,密码不填写,确认密码不填写,验证码不填写 全部不填写

使用正交表从32种用例到7种

场景法

现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。

场景法原理

在了解场景法之前,要先了解基本流和备选流:
1.基本流:软件功能按照正确的事件流,中间无任何差错,从开始直接执行到结束的一条正确流程
2.备选流:软件功能在执行过程中,除了基本流之外可能遇到的各种情况,是包含可能存在问题的各支流

边界值法:取边界值+次边界值 边界值有效,那次边界值无效 边界值无效,那次边界值有效

这些具体的方法旨在提高我们的测试思路+提高我们设计测试用例的能力

错误猜测法

错误猜测法是对被软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。

这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。

错误推测法和目前流行的“探索式测试方法”的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应用于测试。

当我们一提到某个非常熟悉的人的名字,脑海会浮现出对他的评价

“武大郎”:憨厚,老实,为人坦诚,乐于助人

“潘金莲”:美丽,“温柔”,“疼爱丈夫”,“善于交友”,“精通制衣”

“登录功能”设计测试用例

1.明确需求

2.使用万能公式+测试用例方法设计测试用例

3.按照测试用例对系统进行测试

4.记录测试,编写一篇测试博客

博客系统测试

1.项目背景

2.项目功能

3.对项目进行测试

1)编写测试用例

用例截图放到这里

2)执行测试

选取几个用例的步骤截图放到这里仅做展示

4.测试总结(覆盖了多少个页面、用例是否全部执行通过,发现了多少个bug?bug出现的原因/设计到的页面在哪里…)


命令行程序

zip/unzip命令对文件进行解压缩,这样的场景来设计测试用例

Zip命令

功能测试:对不同的文件类型进行测试

1)普通的txt文件能够生成zip文件

2)图片/视频/zip文件能够生成zip文件

3)多个文件能够生成zip文件(混合文件)

4)空文件夹可以生成zip文件

5)错误的命令是否可以解压(zip zip/没有写压缩包文件名称/没有源文件)

6)其他参数的测试

界面测试:

1)文件压缩成功命令行提示是否美观

2)文件压缩报错命令行提示是否友好

性能测试:

1)文件大小超过1G时文件是否可以压缩

2)文件大小超过1G时文件压缩消耗的时间是否在合理的时间范围内

兼容性测试:

1)zip工具可以在多系统上使用,如Windows、Linux、Mac

易用性测试:

1)zip命令有使用帮助教程,如zip --help命令下会展示如何使用

安全性:

1)使用zip命令不会泄露文件内容


接口:http://192.168.47.135:8080/blog_system/blog?blogid=10

相关文章:

五、用例篇

Bug等级:崩溃、严重、一般、次要 bug的生命周期 面试高频考题:跟开发产生争执怎么办? (1)反思自己,是不是bug描述写的不清楚 (2)站在用户思考问题,反问开发人员:“如果你是用户,你能接受这样…...

【QT】学习笔记1

QT概述 Qt是一个1991年由QtCompany开发的跨平台C图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(…...

英伟达开源253B语言模型:Llama-3.1-Nemotron-Ultra-253B-v1 模型情况

Llama-3.1-Nemotron-Ultra-253B-v1 模型情况 1. 模型概述 Llama-3.1-Nemotron-Ultra-253B-v1 是一个基于 Meta Llama-3.1-405B-Instruct 的大型语言模型 (LLM),专为推理、人类对话偏好和任务(如 RAG 和工具调用)而优化。该模型支持 128K 令…...

质检LIMS系统在半导体制造行业的应用 半导体质量革命的现状

在半导体这个“工业皇冠上的明珠”领域,纳米级的精度要求与质量管控如同硬币的两面。随着芯片制程向3nm、2nm演进,传统质检模式已难以满足海量数据、复杂工艺的质量追溯需求。质检LIMS实验室系统作为质量管理的中枢神经,正在重构半导体制造的…...

面向对象高级(1)

文章目录 final认识final关键字修饰类:修饰方法:修饰变量final修饰变量的注意事项 常量 单例类什么是设计模式?单例怎么写?饿汉式单例的特点是什么?单例有啥应用场景,有啥好处?懒汉式单例类。 枚举类认识枚…...

HTTP 压力测试工具autocannon(AI)

简介 autocannon 是一款基于 Node.js 的高性能 HTTP 压力测试工具,适用于评估 Web 服务的并发处理能力和性能瓶颈。 一、工具特点 高性能‌:利用 Node.js 异步非阻塞机制模拟高并发请求‌。‌实时监控‌:测试过程中动态展示请求统计和性能…...

my2sql工具恢复误删数据

一、下载my2sql my2sql下载地址https://github.com/liuhr/my2sql/blob/master/releases/centOS_release_7.x/my2sql 二、my2sql工具注意事项 1. binlog格式必须为row,且binlog_row_imagefull 原因:binlog_row_image 参数决定了 binlog 中是否记录完整的…...

【AGI-Eval行业动态】OpenAI 语音模型三连发,AI 语音进入“声优”时代

前言:OpenAI又双叒叕搞事情了!这次他们带着三款全新语音模型强势来袭,直接让 AI 语音界卷出新高度!无论是语音识别的精准度、还是根据文字生成音频的脑洞,这三款模型都堪称“神仙打架”。 如果你还在用老掉牙的语音助手…...

蓝桥杯嵌入式十四届模拟一(eeprom)

一.LED 先配置LED的八个引脚为GPIO_OutPut,锁存器PD2也是,然后都设置为起始高电平,生成代码时还要去解决引脚冲突问题 二.按键 按键配置,由原理图按键所对引脚要GPIO_Input 生成代码,在文件夹中添加code文件夹&#…...

ArcGis Reclassify CDL

1. 下载CDL CropScape - NASS CDL Program 2. 把CDL放入arcgis,导出表格,变成csv 3. 把cvs表格里的内容合并,分类成 agriculture developed open natural other water woods fruits 等 4.变成新的表格,导入gis使用recla…...

DevOps与功能安全:Perforce ALM通过ISO 26262合规认证,简化安全关键系统开发流程

本文来源perforce.com,由Perforce中国授权合作伙伴、DevSecOps解决方案提供商-龙智翻译整理。 近日,Perforce ALM(原Helix ALM)通过了国际权威认证机构 TV SD的ISO 26262功能安全流程认证!该认证涵盖Perforce ALM解决方…...

C++高精度算法(加、减、乘)

首先声明,没有除法是因为我不会(手动狗头_doge) 简介 顾名思义,高精度算法是用来算一些超级大的数,比如长到 longlong 都存不下的那种,还有就是小数点后好多位,double都存不下的那种&#xff…...

【图片识别改名工具】如何识别图片中文字内容,并根据文字对图片批量重命名批量改名,基于WPF和腾讯OCR的完整实现

​​办公场景​​ ​​批量处理图片文件​​:用户有一批图片文件,图片中包含文字信息(如编号、日期、名称等),需要根据图片中的文字内容对图片进行重命名。​​自动化办公​​:在办公场景中,用户需要将图片文件按内容分类或归档,手动重命名效率低下,自动化工具可以大幅…...

Dify+DeepSeek能做出什么来?快速构建可扩展的 AI 应用

将 Dify(开源 LLM 应用开发平台)与 DeepSeek(深度求索公司的高性能大模型,如 DeepSeek-R1 或 DeepSeek-Lite)结合使用,可以充分发挥两者的优势,快速构建高效、灵活且可扩展的 AI 应用。以下是具…...

【深度学习】Ubuntu 服务器配置开源项目FIGRET(PyTorch、torch-scatter、torch-sparse、Gurobi 安装)

开源项目网址:https://github.com/FIGRET/figret 该项目在SIGCOMM2024发表,用深度学习方法处理流量工程中的突发问题 1. 创建新的 Conda 环境 使用国内镜像源创建环境​ conda create -n figret python3.8.0 --override-channels -c https://mirrors.…...

浅析Centos7安装Oracle12数据库

Linux下的Oracle数据库实在是太难安装了,事贼多,我都怀疑能安装成功是不是运气的成分更高一些。这里虚拟机是VMware Workstation 15.5,操作系统是Centos7,Oracle版本是Oracle Database 12c Enterprise Edition Release 12.1.0.2.0…...

代码随想录算法训练营Day27 | Leetcode 56. 合并区间、738.单调递增的数字、968.监控二叉树

代码随想录算法训练营Day27 | Leetcode 56.合并区间、738.单调递增的数字、968.监控二叉树 一、合并区间 相关题目:Leetcode56 文档讲解:Leetcode56 视频讲解:Leetcode56 1. Leetcode56. 合并区间 以数组 intervals 表示若干个区间的集合&am…...

三大开源大模型应用框架深度对比:AnythingLLM、Dify 与 Open-WebUI

三大开源大模型应用框架深度对比:AnythingLLM、Dify 与 Open-WebUI 本文将全面解析三大主流开源大模型应用框架与Ollama的集成方案,帮助开发者根据实际需求选择最适合的工具。 一、框架概览与定位差异 1. AnythingLLM:企业级知识管理专家 …...

freertos低功耗模式简要概述

简介 FreeRTOS 的 Tickless 模式是一种特殊的运行模式,用于最小化系统的时钟中断频率,以降低功耗。在 Tickless 模式下,系统只在有需要时才会启动时钟中断,而在无任务要运行时则完全进入休眠状态,从而降低功耗。在滴答…...

ESP32S3 链接到 WiFi

以下是关于如何让 ESP32S3 连接到 WiFi 的完整流程和代码示例: ESP32S3 链接到 WiFi 1. 设置工作模式 ESP32 可以工作在两种模式下: Station (STA) 模式:作为无线终端连接到无线接入点(AP),类似于手机或…...

2024年博客之星的省域空间分布展示-以全网Top300为例

目录 前言 一、2024博客之星 1、所有排名数据 2、空间属性管理 二、数据抓取与处理 1、相关业务表的设计 2、数据抓取处理 3、空间查询分析实践 三、数据成果挖掘 1、省域分布解读 2、技术开发活跃 四、总结 前言 2024年博客之星的评选活动已经过去了一个月&#xf…...

vue项目引入tailwindcss

vue3项目引入tailwindcss vue3 vite tailwindcss3 版本 初始化项目 npm create vitelatest --template vue cd vue npm install npm run dev安装tailwindcss3 和 postcss 引入 npm install -D tailwindcss3 postcss autoprefixer // 初始化引用 npx tailwindcss init -p…...

蓝桥赛前复习2:一维差分二维差分

一维差分 问题描述 给定一个长度为 nn 的序列 aa。 再给定 mm 组操作,每次操作给定 33 个正整数 l,r,dl,r,d,表示对 al∼ral∼r​ 中的所有数增加 dd。 最终输出操作结束后的序列 aa。 Update:由于评测机过快,n,mn,m 于 2024…...

算法---子序列[动态规划解决](最长递增子序列)

最长递增子序列 子序列包含子数组&#xff01; 说白了&#xff0c;要用到双层循环&#xff01; 用双层循环中的dp[i]和dp[j]把所有子序列情况考虑到位 class Solution { public:int lengthOfLIS(vector<int>& nums) {vector<int> dp(nums.size(),1);for(int i …...

100道C#高频经典面试题带解析答案——全面C#知识点总结

100道C#高频经典面试题带解析答案 以下是100道C#高频经典面试题及其详细解析&#xff0c;涵盖基础语法、面向对象编程、集合、异步编程、LINQ等多个方面&#xff0c;旨在帮助初学者和有经验的开发者全面准备C#相关面试。 &#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSD…...

jar包安全加密工具

目录 1. 代码混淆工具(Obfuscation) 推荐工具 (1) ProGuard (2) Allatori (3) DashO 2. JAR 加密工具(Class 文件加密) 推荐工具 (1) JxCore (2) ClassFinal (3) Zelix KlassMaster 3. 自定义类加载器加密 实现思路 4. 打包成 Native 可执行文件 推荐工具 (…...

MQTT的构成、使用场景、工作原理介绍

一、MQTT内容简介 MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级、基于发布-订阅模式的消息传输协议【适用于资源受限的设备和低带宽、高延迟或不稳定的网络环境】它在物联网应用中广受欢迎&#xff0c;能够实现传感器、执行器和其它设备之间的…...

RESTful API以及使用它构建 web 应用程序的方法

RESTful API是一种基于REST&#xff08;Representational State Transfer&#xff09;架构风格的应用程序接口&#xff0c;通过HTTP协议传输数据并使用标准的HTTP方法&#xff08;GET、POST、PUT、DELETE&#xff09;来对资源进行操作。 RESTful API 遵循一系列约定和规范&…...

Vanna + qwq32b 实现 text2SQL

Vanna 是一个开源的 Text-2-SQL 框架&#xff0c;主要用于通过自然语言生成 SQL 查询&#xff0c;它基于 RAG&#xff08;Retrieval-Augmented Generation&#xff0c;检索增强生成&#xff09;技术。Vanna 的核心功能是通过训练一个模型&#xff08;基于数据库的元数据和用户提…...

电脑知识 | TCP通俗易懂详解 <一>

目录 一、&#x1f44b;&#x1f3fb;前言 二、&#x1f68d;什么是TCP/TCP协议 三、&#x1f9cd;‍♂为什么TCP可靠 1.&#x1f970;关于可靠 2.&#x1f920;哪里可靠 3.&#x1f393;️图片的三次握手&#xff0c;四次挥手 4.&#x1f4da;️知识点总结 四、&…...