技术手段和测试流程,不是一回事

看到这样一个问题:造测试数据时,如果失败了怎么办,如何处理这种失败的情况?失败了需要停止测试活动吗

很久没看到这么有意思的问题了,毕竟测试数据是很重要的测试活动开展资料,如果缺失或者不准确,会对测试结果造成极大的影响。那么该如何理解和解决上述的问题呢?

 

我们先来解读一下这个问题。

在软件研发交付的整个生命周期中,测试活动执行属于相对滞后的环节。测试活动开展有这几样基本要素:测试环境、测试对象、测试用例和测试数据

其中测试环境是测试活动开展的底层基础设施,测试对象是具体某个需求实现或者功能测试点,测试用例可以看做是测试对象的具体定性,而测试数据则是对测试对象的多维度定量指标。

我们都知道测试的目的是验证代码实现是否符合需求设计要求,而测试数据的重要性就在于,对代码实现的功能进行多角度的度量,最终得到具体结论。

从测试流程的角度来看,测试活动的生命周期大体如下图:

其中,测试数据和测试执行步骤,都是测试用例设计的子集,也可以理解为测试数据是执行测试用例的前置条件之一。

既然是前置条件,那就应该在测试活动执行之前的准备阶段,就将测试所需的数据准备好,而不是因为准备测试数据过程中遇到了阻塞就停止测试活动。

 

现在很多测试团队在准备测试数据时,都是通过自动化脚本或者造数据工具来准备测试数据,这些都是技术手段。技术手段可以看做是测试团队的基础技术设施建设。

在我的角度理解,技术手段可以有多种多样,无论是用工具准备测试数据,还是手动一条一条准备测试数据,都是技术手段,区别无非手段的表现形式和效率的差别。

而测试活动执行,则是测试流程的范畴。流程的属性侧重协作和方向,就像地图导航中的路线规划以及导航过程中的各种提示。而技术手段则是导航中我们所使用的交通工具,目的是支撑我们到达目的地。

做过自动化测试的同学应该都知道这样一个基础概念:脚本和数据分离。其实置换到测试数据准备和测试活动执行的背景下,这个概念同样适用。即:数据和脚本分离,造数据和测试流程分离

而且技术手段和流程规范解耦,本身就是一种高效的软件工程方法。

posted @ 2024-07-03 14:55  老_张  阅读(43)  评论(0编辑  收藏  举报