软件测试概念篇下

本文详细介绍了软件测试的生命周期,包括需求分析、测试计划、设计与开发、执行和评估阶段。同时,讲解了如何描述一个BUG,强调了版本、环境、重现步骤等关键信息。此外,还深入探讨了测试用例的设计方法,如需求分析法、等价类、边界值、因果图、正交法、场景法和错误测试法,旨在提高测试效率和质量。
摘要由CSDN通过智能技术生成

(如果自动被设置成vip,请私信作者)

八、软件测试的生命周期

软件测试的生命周期: 需求分析→测试计划→ 测试设计、测试开发→ 测试执行→ 测试评估

九、如何描述一个BUG

1、发现问题的版本
开发人员需要知道出现问题的版本,才能够获取对应版本的代码来重现故障。并且版本的标识也有利于统计和分析每个版本的质量。

2、问题出现的环境
环境分为硬件环境和软件环境,如果是web项目,需要描述浏览器版本,客户机操作系统等,如果是app项目,需要描述机型、分辨率、操作系统版本等。详细的环境描述有利于故障的定位。

3、错误重现的步骤
描述问题重现的最短步骤。

4、预期行为的描述
要让开发人员指导怎么样才是正确的,尤其要以用户的角度来描述程序的行为是怎样的。如果是依据需求提出的故障,能写明需求的来源是最好的。

5、错误行为的描述
描述错误的现象。crash等可以上传log,UI问题可以有截图。

6、其他
某些公司会有一些其他的要求,例如故障的分类:功能故障,界面故障,兼容性故障等。有些有优先级的分类,严重影响测试需要开发人员优先修改的,可以设置优先级为高。

7、不要把多个bug放到一起
在无法确认是同一段代码造成的故障时,不要将bug放在一起提交。

十、测试用例

测试用例(Test Case):是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素

评价测试用例的标准:

  1. 用例表达清楚,无二义性。
  2. 用例可操作性强。
  3. 用例的输入与输出明确。
  4. 一条用例只有一个预期结果。
  5. 用例的可维护性好。
  6. 用例对需求的覆盖率高, 暴露程序Bug的能力强力。

测试用例的设计方法
1.需求分析法: 按照需求去设计测试用例

注意:有多细致的需求就有多细致的测试用例(用户需求和软件需求)

原则:(1)验证需求的正确性;
(2)软件功能是不是和需求相符合

2.等价类: 针对输入无法全部覆盖,根据需求把输入分为若干个等价类,从每一个等价类中寻找出拥有代表性的数据进行测试,如果测试通过,我们就说这个数据代表的等价类测试通过。

目的:解决输入无穷的一种测试用例设计方法;

有效等价类:符合规格说明,对程序来说有意义的数据集合
无效等价类:不符合需求规格说明的

例1: 用户名输入5-16位字符(字母)
有效等价类:5-16位字母,大写字母,小写字母,大小写混合;
无效等价类:0-4,>16位,特殊字符,数字,

例2:
在这里插入图片描述

3.边界值: 针对输入输出边界值的测试

例:用户名是4-16位的字符
边界值:3,4,5,15,16,17

备注:边界值和等价类结合在一起设计测试用例

4.因果图: 表示输入和输出关系的一种逻辑图
使用场景:当需求有多个输入的时候,并且需求的输出和输入相关的时候,我们就用因果图法;

因果图法逻辑关系:

(1)恒等:输入为真,输出为真;
(2)与:当输入有多个条件(大于一个,并且这多个条件都为真的时候,那么输出为真);
(3)或:当输入有多个条件,只要其中一个输入为真的时候,那么输出为真;
(4)非:输入为假,输出为真;

步骤:
1)找出可能的输入和输出
2)找出输入和输出之间的关系(恒等,与,或,非)
3)画因果图
4)根据因果图去画判定表
5)根据判定表生成测试用例

例:
继续以注册的需求为例:
姓名、邮箱、密码、确认密码、验证码必须全部输入,才能进行注册
需要设计多少用例?2x2x2x2x2

5.正交法: 当测试用例很多,无法全部覆盖的时候,利用正交性,画出正交表,寻找出有代表性的点,针对这些数据进行测试用例的设计和测试结果的分析,用以推断整体的试验情况。

因素:待考察的变量(C)
水平:考察变量(因素)的取值(T)
行数:L=N(CT)=(水平数-1)*因素+1

正交表的性质:
(1)每一列中数字出现的次数一样的
(2)任何两列中,各个有序对数出现的次数一样多

正交法设计测试用例的步骤:
1、有哪些因素(变量)
2、每个因素有哪几个水平(变量的取值)
3、选择一个合适的正交表
4、把变量的值映射到表中
5、把每一行的各因素水平的组合作为一个测试用例
6、加上你认为可疑且没有在表中出现的用例组合

例:
1、因素:姓名、邮箱、密码、确认密码、验证码
2、水平:填写、不填写
在这里插入图片描述3、表中的因素数=5;
表中至每个因素数的水平数=2
行数取最少的一个,即试验次数最少的一个
L=N(TC)=(2-1)*5+1=6=6(25)
L=6(25) // N试验次数、T水平数、C因素数

6.场景法: 场景法将多个功能点组合在一起形成事件流,根据不同的事件触发,形成不同的场景:

银行卡取款例子:
插卡—>输入密码—>输入取款金额—>取款—>退卡
(1)基本流:没有任何异常事件发生的条件下的场景;
(2)备选流:发生了异常情况的场景;
输入密码错误:第一次输错,第二次输对;二,三次密码都输错,账户冻结
当输入金额大于银行卡余额的时候,会提示余额不足,取款流程操作过慢,吞卡

7.错误测试法: 靠着以往的直觉和经验来找出代码的错误。
依据:
(1)直觉,经验
(2)用户的反馈
(3)故障库

备注:错误猜测法只适合用其他测试用例设计法设计测试用例完成后,进行测试用例的补充;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值