【软件测试】bug以及测试用例的设计方法

2024-09-01 06:44

本文主要是介绍【软件测试】bug以及测试用例的设计方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系列文章目录

第一章 【软件测试】常见的开发模型和测试模型


文章目录

  • 系列文章目录
  • 前言
  • 一、bug的基本要素。
  • 二、bug的处理流程
  • 三、弱网测试
  • 四、设计方法
    • 1.基于需求的设计方法
    • 2.具体的测试方法
      • (1)等价类划分法
      • (2)边界值分析法
      • (3)场景法
      • (4)正交表法
      • (5)判定表法
      • (6)错误猜测法
  • 总结


前言

在前文中我们对于软件测试常用的开发模型和测试模型有了一个初步的认识。而测试贯穿于软件的整个生命周期,我们常常需要通过测试对bug进行定位和修复。


一、bug的基本要素。

对于bug,我们通常认为当规格说明是存在且正确的情况下,程序与规格说明之间不匹配才是错误的。
我们需要对bug进行描述,包括问题出现的版本,问题出现的环境,问题出现的步骤,预期结果,实际结果。
bug的级别一般分为:崩溃、严重、一般、次要

二、bug的处理流程

在测试的过程中,当测试人员创建一个bug后,将bug设置为new状态;
开发人员确认bug是否有效,如果无效则将状态流转为Rejected。
当bug有效时,就设置bug为open状态,并判定bug是否需要立即修改。
当bug优先级很低/时间不够时,就推迟修复;当bug优先级很高/时间充足时,就会对bug进行修复。
修复完成之后交由测试人员重新测试,仍存在bug的情况下就重新打开bug,bug成功修复的情况下则关闭bug,整个处理流程结束。
在这里插入图片描述

三、弱网测试

在测试过程中需要编写测试用例,包括界面测试、功能测试、性能测试、兼容性测试、易用性测试、安全测试、安装卸载测试以外,还有一些特殊的测试场景如弱网测试。
弱网测试即在网络坏境较差的情况下,对于网站页面、网站功能是否存在影响。
对于测试方法,我们可以使用工具模拟弱网测试。这里使用的测试工具为fiddler

  1. 打开弱网设置
    在这里插入图片描述
  2. 对于网络上行速率和下行速率进行控制。
    在这里插入图片描述
    设置速率,1kb数据传输所需要的时间进行设置。当数字越大,则传输的速率就越慢,因此能够模拟出弱网环境。
    在这里插入图片描述

四、设计方法

1.基于需求的设计方法

测试人员接到需求以后,要对需求进行分析和验证。从合理的需求中进一步分析细化需求,从细化的需求中找出测试点并设计测试用例。

2.具体的测试方法

(1)等价类划分法

根据需求将输入划分为若干个等价类,从等价类中选出测试用例。(类似区间)
解决了不能穷举测试的问题。等价类划分法分为有效等价类和无效等价类
最简单的例子:在用户信息中用户名要求6-15个字符串,超过则违约。

有效等价类为6-15个字符;
无效等价类分为str<6 或str > 15

大致如下图所示。

在这里插入图片描述

(2)边界值分析法

边界值分析法就是对输入或输出边界值进行测试,通常边界值分析法是对等价类划分法的补充。
边界值包含:边界值+次边界值

1)假设有效范围为[6,15]边界值:6  ,15(有效)次边界值:5,16(无效)
2)假设有效范围(6,15)边界值:6,15 (无效)次边界值:7,14 (有效)

(3)场景法

场景法分为基本流和备用流
基本流即功能的常规操作流程;备用流为功能的特殊操作情况。

以用户注册功能为例编写测试用例
1)基本流:点击注册入口,同意用户协议,输入正确信息,点击注册按钮,成功注册。
2)备用流:点击注册入口,不同意用户协议,退回注册入口,同意协议,输入正确信息,点击注册按钮,成功注册。
3)备用流:点击注册入口,不同意用户协议,退回注册入口,不同意用户协议,退回注册入口,同意用户协议,输入错误信息后报错,重新输入正确的信息,点击注册按钮,成功注册。

(4)正交表法

正交表法的目的是为了减少用例数目,用尽量少的用例覆盖输入的两两组合。
正交表以二维表格展开,分为水平和因素两种。(X轴方向为因素,Y轴方向为水平)
以账号密码的信息是否填写为例,进行排列组合就有4种。我们可以通过allpairs设计正交表。

以下面的因素和水平作为案例使用allpairs生成正交表

在这里插入图片描述

  1. 将因素和水平按照上图的方式写入excel中。
    在这里插入图片描述
  2. 在allpairs下创建test.txt文件并把excel中的内容复制进去,确保格式正确。
  3. 执行allpairs应用,生成正交表文件res-test.txt
    在这里插入图片描述
  4. 最后就能在文件夹中找到正交表文件res-test.txt了,其中的数据已经进行了正交生成了有用的测试用例。
    在这里插入图片描述

(5)判定表法

判定表是一种表达逻辑判断的工具,它的思路清晰,很容易就能编写出测试用例。
它的编写方式如下图所示:
在这里插入图片描述

(6)错误猜测法

错误猜测法是对被测试软件设计的理解,过往经验以及个⼈直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。
这种依靠个人经验所使用的方法,需要随着经验的不断累积才能灵活使用,这里不再赘述。


总结

本文对于测试方法以及设计测试用例的方法进行了简要的讲解。

这篇关于【软件测试】bug以及测试用例的设计方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1126236

相关文章

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

SpringMVC 通过ajax 前后端数据交互的实现方法

《SpringMVC通过ajax前后端数据交互的实现方法》:本文主要介绍SpringMVC通过ajax前后端数据交互的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价... 在前端的开发过程中,经常在html页面通过AJAX进行前后端数据的交互,SpringMVC的controll

Java中的工具类命名方法

《Java中的工具类命名方法》:本文主要介绍Java中的工具类究竟如何命名,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java中的工具类究竟如何命名?先来几个例子几种命名方式的比较到底如何命名 ?总结Java中的工具类究竟如何命名?先来几个例子JD

Spring Security自定义身份认证的实现方法

《SpringSecurity自定义身份认证的实现方法》:本文主要介绍SpringSecurity自定义身份认证的实现方法,下面对SpringSecurity的这三种自定义身份认证进行详细讲解,... 目录1.内存身份认证(1)创建配置类(2)验证内存身份认证2.JDBC身份认证(1)数据准备 (2)配置依

python获取网页表格的多种方法汇总

《python获取网页表格的多种方法汇总》我们在网页上看到很多的表格,如果要获取里面的数据或者转化成其他格式,就需要将表格获取下来并进行整理,在Python中,获取网页表格的方法有多种,下面就跟随小编... 目录1. 使用Pandas的read_html2. 使用BeautifulSoup和pandas3.

Spring 中的循环引用问题解决方法

《Spring中的循环引用问题解决方法》:本文主要介绍Spring中的循环引用问题解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录什么是循环引用?循环依赖三级缓存解决循环依赖二级缓存三级缓存本章来聊聊Spring 中的循环引用问题该如何解决。这里聊

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Pandas统计每行数据中的空值的方法示例

《Pandas统计每行数据中的空值的方法示例》处理缺失数据(NaN值)是一个非常常见的问题,本文主要介绍了Pandas统计每行数据中的空值的方法示例,具有一定的参考价值,感兴趣的可以了解一下... 目录什么是空值?为什么要统计空值?准备工作创建示例数据统计每行空值数量进一步分析www.chinasem.cn处