0
点赞
收藏
分享

微信扫一扫

上下文驱动测试:如何在软件开发中实现更高效的测试?

什么是基于上下文驱动的测试(context-driven-testing)?它不是一种具体的测试方法,而是一类测试思维的体现,通常是指测试人员首先查看特定迭代的细节(产品特性、业务需求、相关干系人等)来选择他们的测试目标、技术和可交付成果(包括测试文档)。归根结底,上下文驱动的测试是要尽我们所能做到最好。我们不尝试应用“最佳实践”,而是接受非常不同的实践(甚至常见测试术语的不同定义)将在不同情况下发挥最佳效果。

七个基本原则

任何实践的价值都取决于它的背景。

在上下文中有好的实践,但没有最佳实践。

一起工作的人是任何项目环境中最重要的部分。

项目随着时间的推移以通常无法预测的方式展开。

产品是一种解决方案。如果问题没有解决,产品就无法工作。

好的软件测试是一个具有挑战性的智力过程。

只有通过判断力和技巧,在整个项目中协同运用,我们才能在正确的时间做正确的事情,以有效地测试我们的产品。

上下文驱动测试的示例

假设有一个基于Web应用程序的端到端测试。

一般策略顺序是什么?

收集需求并了解应用程序

创建测试计划

创建测试文档——测试场景、测试用例、可追溯性矩阵等。

审查并批准所有文件

搭建QA环境和测试数据

执行测试执行

创建错误报告

生成和共享测试执行状态报告等。

这个一般策略来源于最佳实践、QA 标准、行业指南、过去的经验等,但这一定是最佳的吗?

上下文驱动测试是指让不同的环境决定团队的测试实践、技术甚至定义,而不是标准的、行业认可的“最佳实践”。

假设这些是项目A处理的细节:

一个由4-5名新人和 1 名经验丰富的测试人员组成的团队;

客户想要每日详细的状态报告;

使用基于网络的错误跟踪工具,例如 Mantis 或 Bugzilla;

必须在10天内进行 2 轮测试,其中3天用于测试文档;

该怎么做?

1.由于团队中有很多新人,我们需要大量的同行评审。

2.文档写的越多,审查就越多,这就相当于需要更多的时间。因此,必须保留最少的文档。只记录主要的端到端,其余的将进行探索性测试。

3.测试执行期间的每日状态报告将被创建。

4.大多数测试都是探索性的,所以建议花时间尝试对每个执行的测试做一个简短的概述。这样我们就知道什么被测试了,什么没有被测试。

5.缺陷将实时报告给Mantis。

使环境(而不是标准)成为测试策略的主要输入和影响因素。这将促使我们环顾四周,将周围的一切都考虑在内。

举报

相关推荐

0 条评论