首页 > 其他分享 >【软件测试】设计测试用例的方法(正交法、判定表法、错误猜测法),测试文档的写法

【软件测试】设计测试用例的方法(正交法、判定表法、错误猜测法),测试文档的写法

时间:2024-11-12 17:43:31浏览次数:3  
标签:用例 猜测法 验证码 正交 密码 测试用例 填写 电子邮箱 软件测试

正交法

正交试验设计(Orthogonal experimentaldesign)是研究多因素多⽔平的⼀种设计⽅法,它是根据正交性,由试验因素的全部⽔平组合中挑选出部分有代表性的点进⾏试验,通过对这部分试验结果的分析了 解全⾯试验的情况,找出最优的⽔平组合。正交试验设计是⼀种基于正交表的、⾼效率、快速、经济的试验。

正交表

如图最简单的正交表是 L 4 ( 2 3 ) L4(2^3) L4(23),含意如下:“L ”代表正交表;L 下⻆的数字“ 4 ”表⽰有 4 横⾏,简称⾏,即要做四次试验;括号内的指数“3 ”表⽰有 3 纵列,简称列,即最多允许安排的因素是 3 个;括号内的数“2 ”表⽰表的主要部分只有 2 种数字,即因素有两种⽔平 12
image.png|423

  • 因素:存在的条件
  • 水平:因素的取值

特性:

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

正交法的目的是为了减少用例数目。用尽量少的用例覆盖输入的两两组合

设计正交表

借助工具来实现正交表:allpairs image.png|338

步骤:

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

    • 因素:姓名、电子邮箱、密码、确认密码、验证码
    • 水平:填写、不填写
  2. 将因素和水平写入到 Excel 表格中(表格不需要保存)image.png|385

    • 建议使用微软自带的 Excel,不建议使用其他的 Excel 工具image.png|494
  3. allparis.exe 同级文件夹下创建一个 txt 文件,将 Excel 表格中的内容复制到 txt 文件中,不要有其他的操作,直接保存文件

如果不是用 Excel 直接粘贴到记事本里面,而是手动在 txt 文件中编写因素和水平,使用命令生成正交表会存在格式校验错误的情况,allparis 工具对格式的要求非常严格

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

    • pairs 目录中打开 cmd
    • 输入命令: allparis.exe test01.txt > res-test01.txtimage.png
    • ~ 代表可以是任何选项(填写/不填写)
    • allparis 工具生成的正交表和实际的正交表会有一定的出入,但是不影响整体的情况
  2. 根据生成好的正交表来编写测试用例,继续将重要的用例补全

    1. 姓名填写、电子邮箱填写、密码填写、确认密码填写、验证码填写
    2. 姓名填写、电子邮箱不填写、密码不填写、确认密码不填写、验证码不填写
    3. 姓名不填写、电子邮箱填写、密码不填写、确认密码填写、验证码不填写
    4. 姓名不填写、电子邮箱不填写、密码填写、确认密码不填写、验证码填写
    5. 姓名填写/不填写、电子邮箱填写、密码填写、确认密码不填写、验证码不填写
    6. 姓名填写/不填写、电子邮箱不填写、密码不填写、确认密码填写、验证码填写
    7. 姓名不填写、电子邮箱不填写、密码不填写、确认密码不填写、验证码不填写(自己补的,有全部填写,也有全部不填写

判定表法

通过具体的⽅法能够将测试⽤例设计的更加完整和规范。需求中会存在各种各样的场景,现在我们把需求改成如下的要求:

  • 用户输⼊的账号中包含 admin 字符,或者通过内部链接进⼊注册⻚⾯,然后提交注册按钮成为管理员⾝份;反之⽆管理员⾝份。

通过这个需求可以看出,不同的组合操作可能对应不同的结果。采⽤正交法⽆法解决这样的问题。⽽正交法能够解决需要考虑输⼊之间的组合关系对应不同结果的场景。

判定表

判定表是⼀种表达逻辑判断的⼯具,形如:image.png|501

  • 非常容易编写出测试用例(思路非常清晰)
  • 没有判定表的话,写出来的用例组合就非常凌乱
    1. 感觉疲倦,也不感兴趣
    2. 感觉疲倦,但是感兴趣
    3. 不疲倦,感兴趣

设计测试用例的步骤

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

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

    • 输入:账户包含 admin 字符,内部链接进入注册界面,提交注册按钮
    • 输出:管理员/非管理员
  2. 找出输入条件和输出条件之间的关系

    • 通过对输入条件的组合,找出不同组合对应的结果image.png|483
  3. 画判定表image.png

  4. 根据判定表编写测试用例
    1. 账户包含 admini 字符,提交注册按钮,成为管理员账号
    2. 内部链接进入注册,提交注册按钮,称为管理员账号
    3. …


错误猜测法

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

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

错误推测法和⽬前流⾏的“探索式测试⽅法”的基本思想⼀致,这类⽅法在敏捷开发模式下的投⼊产出⽐很⾼,被⼴泛应⽤于测试。

当我们⼀提到某个⾮常熟悉的⼈的名字,脑海会⽴刻浮现对他的评价

  • “武⼤郎”:憨厚,⽼实,为⼈坦诚,乐于助⼈
  • “潘⾦莲”:美丽,“温柔”,“疼爱丈夫”,“善于交友”,“精通制⾐”

张三要去卖⽠

  • ⽤例1:张三这⼈不实诚,⼩⼼他缺⽄少两
  • ⽤例2:张三这⼈粗⼼,⼩⼼他的⽠被压坏了
  • ⽤例3:张三这⼈⼩⽓,⼩⼼不要把他惹哭了

密码:是否加密,是否具备安全性
获取用户输入:是否存在 SQL 注入的情况
软件存在多版本:多个版本都要测试
活动每个月都存在,但是每个月的奖励不一样:兼容前面月份的奖励

测试文档

  1. 项目背景
  2. 项目功能
  3. 对项目进行测试
    1. 编写测试用例(用例截图放到这里)
    2. 执行测试(选取几个用例的步骤截图放到这里做展示)
  4. 测试总结(覆盖了多少个页面、用例是否全部执行通过、发现了多少个 bug?bug 出现的原因/涉及到的页面在哪里…)

标签:用例,猜测法,验证码,正交,密码,测试用例,填写,电子邮箱,软件测试
From: https://blog.csdn.net/Yeeear/article/details/143720464

相关文章

  • 摘抄 编写测试用例
    摘抄  https://blog.csdn.net/qq_54219272/article/details/122942139?fromshare=blogdetail&sharetype=blogdetail&sharerId=122942139&sharerefer=PC&sharesource=&sharefrom=from_link软件测试(测试用例)—写用例无压力置顶鸢也于2022-02-1512:57:06发布阅读量10w+收......
  • 软件测试入职要求汇总
    以下是我搜集了各平台对于测试工程师的所有要求汇总而来,如果能掌握以下70%的要求,相信大家能找到一份非常不错的工作。英文流利对Web、App移动端、H5有丰富的测试经验。具备良好的问题分析和解决能力,能够快速定位问题并推动解决熟悉Python、Go、Java、Shell中至少......
  • 学习 Xmind思维导图编写测试点,便于扩展测试用例(详细)
    学习 Xmind思维导图编写测试点,便于扩展测试用例(详细) 》》》问题:之前一直测试思维导图不知道怎么绘制? 搜关键词【测试项思维导图的例子】》》》解决方式:搜 测试项思维导图的例子。看例子去学习。。。。不会的,找例子,去背诵例子,去背诵,掌握知识点,下一次遇到一样的,就可以掌握......
  • @pytest.mark.parametrize()测试用例参数传递
    列表传参list1=[1,2,3]@pytest.mark.parametrize('data',list1)deftest_ddt1(data):print(data)元组传参tup1=(1,2,3)@pytest.mark.parametrize('data',tup1)deftest_ddt1(data):print(data)列表嵌套datas1=[('tom',......
  • 测试用例设计
    1.概念(什么是测试用例?)测试用例(TestCase)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素2.常见的测试用例设计方法等价类划分法、边界值分析法、错误推测法、判定表法、正交实验法。1)等价类划分法等价类划分,就是将......
  • 符合ISO26262的零部件级的软件测试解决方案:目前功能安全零部件测试的困难|软件单元、
    引言在功能安全的开发、测试过程中概念阶段的活动一般都是由主机厂负责,而从系统开发到单元实现则是由供应商负责,对于供应商所做的一系列测试通常称为零部件级测试。根据ISO26262功能安全标准的划分,功能安全在零部件阶段的测试包括:软件单元测试、软件集成测试、硬件集成测......
  • 聊聊接口测试用例设计规范
    1、通过性验证:先按照接口文档传入所有必填字段并且字段值在正确范围内,预期返回正确结果2、参数验证(正向/逆向):必填参数:针对每个必填参数,都设计一条参数为空的测试用例,接口错误信息返回正确非必填参数:设计一条用例所有非必填的参数都传入值,非必填参数(类型,范围)不正确,是否给出合......
  • 软件测试
    非功能性测试1.性能测试系统是否满足规格说明书中规定的性能稳定性:多人使用是否卡顿响应时间:等待时间是否过慢*吞吐量TPS(学习一下)TPS:每秒处理事务数(包括用户请求服务器、服务器的内部处理、服务器返回给用户)每秒可以完成N个这三个过程吞吐量:一个系统的吞吐量与request对......
  • 软件测试--需求分析
    软件需求分析1.系统分析是一组成为计算机系统工程的活动,着眼于所有的系统元素,而不仅仅是软件主要探索软件项目:目标、市场预期、主要技术指标2.可行性分析此问题是否值得去解决针对问题的目标和范围进行概要的分析和研究,探索问题的核心问题以及相应的解决方案3.需求定义用......
  • 软件测试(系统测试)的定位和专业:完善产品;专业;非助手;自动化
    软件测试(系统测试)的定位在研发流程的后端,测试并非无中生有的创举,而是从既有基础(即“1”)出发,致力于推动产品向更高层次(即从“1”到“100”)的跃升与完善。在这一阶段,测试的核心价值在于促进产品的精细打磨与持续优化。对于初创型或小型公司而言,由于产品尚处于原型或初级发展阶......