> 文章列表 > 用例篇—软件测试

用例篇—软件测试

用例篇—软件测试

文章目录

  • 1.测试用例的概念
  • 2.为什么在测试前要设计测试用例
  • 3.基于需求设计测试用例的方法
  • 4.需求分类
    • 4.1功能性需求:
    • 4.2非功能性需求:
  • 5.等价类设计法(测试用例方法一)
    • 5.1设计理念
    • 5.2分类
  • 6.边界值设计法(测试用例方法二)
    • 6.1设计理念
    • 6.2注意
  • 7.错误猜测法(测试用例方法三)
    • 7.1设计理念
  • 8.场景设计法(测试用例方法四)
    • 8.1设计理念
    • 8.2举例(ATM取款流程)
  • 9.因果图设计法(测试用例方法五)
    • 9.1设计理念
    • 9.2使用场景
    • 9.3因果图常用的关系:
    • 9.4设计步骤
    • 9.5例子
  • 10.正交法(测试用例方法六)

1.测试用例的概念

测试人员向被测试系统发起的一组集合,包括测试环境,测试数据,测试步骤,预期结果

2.为什么在测试前要设计测试用例

(1)测试用例是测试执行的依据
(2)可以复用(回归测试的时候)
(3)衡量需求的覆盖率
(4)自动化测试的依据
(5)借鉴意义,后续测试人员可以借鉴前人写的东西

3.基于需求设计测试用例的方法

(1)需求是测试人员进行测试的依据
(2)测试人员首先要分析需求,验证需求的正确性、完整性、合理性,无二异性,逻辑自洽
(3)细化需求,从需求中提取出测试项,从每一个测试项中提取出测试点,根据测试点设计测试用例
(4)要从“黑盒”的角度,设计出充分并且必要的测试集,保证设计和代码都能完全符合需求

4.需求分类

分功能性需求和非功能性需求

4.1功能性需求:

(1)从界面考虑,验证界面的功能(UI设计稿)
(2)从业务角度考虑,把功能串起来进行测试
(3)功能之间的交互性、一致性
(4)功能的异常测试
(5)功能的易用性,体验下的测试
(6)功能涉及到的算法(白盒测试)
(7)一个功能的多个输入

4.2非功能性需求:

(1)在功能的基础上做一些限制,满足特定的场景的需求,让用户有更好的体验
(2)兼容性、性能、安全性、可靠性、可移植性、易用性等等
(3)不同类型的软件对于非功能性需求的要求是不一样的:客户端的软件,如word、PPT、XMind、播放器等,对公和要求很简单,对性能,安全性的要求比较低,软件的可移植性要求比较高;企业软件,如聊天工具、飞Q、飞书、钉钉、企业微信,对功能有一定的要求,对兼容性,安全性,性能要求较低;商业软件,对功能,性能,安全性,可移植性,易用性等各种功能要求都很高

5.等价类设计法(测试用例方法一)

5.1设计理念

根据需求输入(特殊情况下才考虑输出),将输入划分成若干个等价类,从每一个等价类当中提取一个测试用例进行测试,如果测试用例通过,则认为测试用例代表的等价类测试通过,解决了不能穷举测试用例的问题

5.2分类

(1)分为有效等价类和无效等价类
(2)有效等价类:对于程序的规格说明书是合理的、有意义的输入数据构成的集合;利用有效等价类验证程序是否实现了规格说明中所规定的功能和性能
(3)无效等价类:不满足需求说明书的集合
(4)进行测试的时候有效和无效的等价类都需要进行测试

6.边界值设计法(测试用例方法二)

6.1设计理念

对输入输出的边界针对性的进行测试用例设计的一种黑盒测试方法

6.2注意

等价类和边界值通常结合在一起进行测试用例的设计,相互补充

7.错误猜测法(测试用例方法三)

7.1设计理念

(1)根据测试人员自己的知识、经验、直觉找出程序中自己认为可能出现的错误,有针对性的去设计测试用例
(2)探索性测试,适合用来进行测试用例设计的补充

8.场景设计法(测试用例方法四)

8.1设计理念

(1)把一个个孤立的功能串起来形成一个场景,每一个功能不同的输入会触发流程走向不同的场景,根据这些不同功能的不同输入触发形成的场景进行测试用例的设计
(2)提取出场景中涉及的功能点,考虑每一个功能的不同输入

8.2举例(ATM取款流程)

插卡—输入密码—输入取款金额并取钱—退卡
①插卡:卡插反、卡的种类错误、卡消磁、卡有损坏、卡失效、冻结、锁定、挂失
②输入密码:输入为空,点解确定;密码长度不够;第一次输入错误,第二次输入正确,可以继续操作;前两次输入错误,第三次输入正确;前三次输入错误,账户锁定;密码输入正确,提示错误;正确输入密码
③输入取款金额并取钱:取款金额大于卡余额;取款金额小于卡金额;取款金额小于100;取款金额超过单日取款最大额度;取款金额超过单次取款最大额度;输入0元;输入金额不是100的整数倍
④退卡:及时退卡;长时间不操作,卡被吞;多长时间不操作卡会被吞;退卡后是否还可以继续操作
⑤异常:长时间不操作,卡被吞
⑥ATM机异常:密码输入正确,提示输入的密码不正确(观察性用例);ATM机余额不足,小于取钱的金额;ATM断网;ATM机断电;ATM机损坏;ATM按键异常(观察性用例)
ATM机取款流程测试用例(部分):
①卡插反,提示“无法识别”,重新正确插入,操作正常的情况下可以取款成功
②卡消磁,提示“卡无效”,无法取款
③卡锁定,提示“账户被锁定,请解锁后重新操作”
④密码输入为空,提示“密码输入为空,请重新输入”

9.因果图设计法(测试用例方法五)

9.1设计理念

因果图是一种简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系,借助因果图来分析和设计测试用例

9.2使用场景

当输入有多个且不同的输入组合对应着不同的输出,此时可以使用因果图来进行测试用例的分析,根据分析的结果来设计测试用例

9.3因果图常用的关系:

恒等:输入为真,输出为真
用例篇—软件测试

:当输入条件有多个,多个条件都为真的情况下,输出才为真
用例篇—软件测试

:当输入条件有多个,其中有一个条件为真,输出为真
用例篇—软件测试

:输入为真,输出为假,或者,输入为假,输出为真
用例篇—软件测试

9.4设计步骤

(1)分析所有的输入和输出
(2)找出输入和输出之间的逻辑关系
(3)根据输入和输出画出因果图
(4)根据因果图画出判定表
(5)根据判定表去设计测试用例

9.5例子

618京东活动,订单已经提交,并且购物金额大于300,或者有红包,有优惠,否则无优惠
①分析所有的输入和输出:输入:订单已提交,购物金额大于300,有红包;输出:有优惠,没有优惠
②找出输入和输出之间的逻辑关系:订单已提交,购物金额大于300,有红包——>有优惠;订单已提交,购物金额小于300,有红包——>有优惠:订单已提交,购物金额大于300,没有红包——>有优惠;购物金额小于300,没有红包——>没有优惠;订单未提交——>没有优惠;
③根据输入和输出画出因果图
在这里插入图片描述
④根据因果图画出判定表
⑤根据判定表去设计测试用例

10.正交法(测试用例方法六)

根据正交性,从大量的试验数据中,选取最优的数据组合,根据最优的数据组合的结果来衡量整个测试的输出结果