怎样编写测试用例更完整,更能提升工作效率?来试试这套方法!

Posted 程序员二黑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样编写测试用例更完整,更能提升工作效率?来试试这套方法!相关的知识,希望对你有一定的参考价值。

哈喽,我是二黑,这里赠送一份软件测试资料.

  • 1、软件测试学习路线
  • 2、软件测试视频资料
  • 3、软件测试相关文档
  • 4、软件测试相关工具、安装包
  • 5、高级测试工程师简历模板
  • 6、面试题、模拟面试、PDF文档

有需要的小伙伴们可以关注我的公众号:程序员二黑,免费领取


首先,我们需要知道测试用例是什么,测试用例(testcase)是为了某个特殊目标而变质的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。

测试用例的编写是要结合需求文档,结合各种测试方法来编写。那么常用的测试方法有哪些呢?

1.等价类划分法

等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法。

等价类划分法首先要做的是划分等价类,包括有两种不同的情况:有效等价类和无效等价类.然后根据划分好的等价类设计测试用例。基本步骤在于:

第一步,为每一个等价类规定一个唯一的编号;

第二步,设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步.直到所有的有效等价类都被覆盖为止;

第三步,设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步.直到所有的无效等价类都被覆盖为止。

2.边界值分析法

边界值分析方法是对等价类划分方法的补充,也是一种黑盒测试方法,是对等价类分析方法的一种补充。

使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。

3.错误推测法

错误推测发是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。

其基本思想在于:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用。

4.因果图方法

因果图法不同于前面的其他方法,不只考虑输入条件,同时考虑输入条件之间的联系,相互组合等,考虑输入条件之间的相互组合,如此可能会产生一些新的情况。要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。

因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。这就需要利用因果图(逻辑模型)。因果图方法最终生成的就是判定表。它适合于检查程序输入条件的各种组合情况。

5.正交表分析法

有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。

6.场景分析方法

指根据用户场景来模拟用户的操作步骤,这个比较类似因果图,但是可能执行的深度和可行性更好。

以上便是编写测试用例的方法了,另外编写测试用例需要遵循一些基本原则。

1)完整性,这是测试用例最基本也最重要的一点,所编写的测试用例必须覆盖全部需求功能点

2)用例标题要简介清晰,准确描述所测试的测试点;

3)用例的前置条件必须明确,这是执行当前用例的基础;4)操作步骤要详细,输入输出要素要清晰,并且有具体的测试数据;

5)预期结果要准确,与对应的步骤一一对应。

另外我整理了一些编写测试用例需要避免的错误:

1)步骤混合

一个混合了多步的步骤可以被分解成若干个单独的步骤。例如,你正在给别人指从A点到B点的方向:如果你说“去XYZ,然后去ABC”,这并没有多少意义,因为我们需要思考——“首先,我如何到达XYZ”——而“从这里左转,直行1英里,然后在第11号路右转就可以到达XYZ”可能会取得更好的效果。同样的规则也适用于测试用例及其步骤。

2)一条用例中包含多个条件

测试用例必须有一个流向。从预置条件到步骤1,然后是所有步骤。所以应该尽量避免一条测试用例中包含多个条件,从而导致的数据流量乱了。

资料分享

下面是我收集的一份2021年软件测试资料包


包括:软件测试学习路线 ,软件测试视频资料 ,软件测试相关文档 ,软件测试相关工具、安装包 ,高级测试工程师简历模板 、面试题、模拟面试、PDF文档 ,思维导图等等…希望能帮助到大家。

关注我的微信公众号:程序员二黑,就可以免费领取上面这份资料包啦!

如果你真的想做一件事情,那么就算障碍重重,你也会想尽一切办法去办到它。但若是你不是真心的想要去完成一件事情,那么纵使前方道路平坦,你也会想尽一切理由阻止自己向前。

推荐阅读

高薪程序员也躲不过35岁这一关…当能力与年龄脱节,我们该如何自救

清华学姐熬了一个月肝出这份32W字Linux知识手册,在 Github标星31K+

从工地实习月薪3K到一线企业年薪30W,我追上了那个曾经被赋予厚望的自己

以上是关于怎样编写测试用例更完整,更能提升工作效率?来试试这套方法!的主要内容,如果未能解决你的问题,请参考以下文章

提升测试用例专业性的八个步骤

测试用例编写思路

如何提升测试用例运行速度?接口测试专题

有了这些接口测试用例+工具,软件测试效率想不提升都难

C/C++ 单元自动化测试解决方案实践

Android之编写测试用例