如果测试是一场比赛,那么每次数据都会获胜。

如果测试是一场比赛,那么每次数据都会获胜。

时间:2021-1-22 作者:admin

好吧,所以这个标题不完全有意义。然而,如果你读到本文的结尾,一切都会变得清晰。首先,我将讨论短跑测试和开发中的一些持久障碍。然后,我将讨论一个可行的路线,以交付经过严格测试的系统短跑。

这种方法的两个核心将是数据和自动化,协同工作,将需要测试的洞察力转化为严格的自动化测试。但首先,让我们考虑一下为什么设计、开发和测试Insprint仍然如此具有挑战性。

20年后,筒仓仍然是软件交付的挑战

就像敏捷宣言接近20年前,软件交付生命周期仍然充满了筒仓。这些筒仓不仅造成了耗时的错误沟通,而且也放大了人工的努力。每次信息从一个筒仓移动到另一个筒仓时,都需要从一种格式转换为另一种格式:

这些“信息跳”延迟释放,并引入缺陷,因为误解在每个阶段蔓延。现在让我们更详细地看看每个筒仓。

设计

从测试和开发的角度来看,收集基于文本的文档和完全不同的图表中的需求是不合适的。零碎的书面用户故事和文档与需要开发的精确逻辑相去甚远。同时,在基于文本的格式和静态图之间通常很少或没有正式的依赖映射。

发展

因此,软件设计在转换成源代码时会引入bug,从而产生耗时的返工。事实上,多项研究估计需求是造成超过一半的缺陷,而进一步的研究估计开发人员把他们一半的时间花在修复错误上。因此,设计缺陷占用了开发新功能的大量时间。

测试

需求的静态特性进一步增加了手工测试的工作量。“平面”文档和图表尚未为自动化构建好,而且测试人员常常被迫手动将设计转换为测试用例、数据和脚本。

除了浪费时间外,这些手工过程还会破坏质量。今天,一个简单的系统可能需要数千个测试才能发布。面对非正式和不完整的需求,测试人员无法系统地或自动地识别和创建在发布之前需要执行的测试。

相反,手动测试设计几乎完全集中在“愉快路径”场景上,过度测试这些场景,而牺牲了最有可能导致错误的场景。同时,过时的和无效的测试堆积如山,产生了测试失败,使测试进一步落后于发行版.

自动化可以有所帮助–但前提是它必须扩展到测试执行之外

当然,自动化可以帮助加速这些手工过程中的许多。然而,迄今为止,“测试自动化”几乎完全集中在一项任务上:执行测试。在这样做的过程中,它引入了大量的人工过程,同时忽略了质量的关键问题。

在许多情况下,测试自动化引入了一个新的筒仓,以及与它相关的所有时间和精力。测试自动化引入的手动过程包括大量的测试脚本,以及大量的脚本维护。同时,测试执行的速度和数量会增加数据供应瓶颈,而过时或不一致的数据会导致耗时的测试失败。

自动化测试执行也无助于提高测试质量,也无助于识别要运行的测试。测试设计者和自动化工程师仍然面临着拥有比他们所能执行的Insprint更多的系统逻辑的挑战。

对错误的测试进行排序不仅会浪费测试脚本的额外时间,而且还会使关键的系统受到产品缺陷的破坏。因此,测试执行自动化是短跑测试的关键组成部分,但它本身并不是一个解决方案。

“数据驱动”测试,但不是您所知道的。

幸运的是,一个解决方案已经开始出现。它在于数据,以及我们可以将自动化应用于今天广泛可用的数据的方法。这为准确和自动地对测试排序打开了大门,在下一个版本发布之前生成了所需的测试。

(自动化)技术在DevOps工具链中的激增导致了相关数据的激增。更重要的是,这些数据现在以可以捕获和分析的格式输出。

如果我们将这些数据与自动分析和测试生成结合起来,我们就可以开始将最新的测试手工艺品填充到收集数据的相同工具中。这就创建了一个闭环反馈循环,收集和分析更多的数据,以驱动严格的测试in-sprint。

现在让我们看一下这种“数据驱动”的短跑测试方法的组件。

连通性

这种方法的第一个先决条件是跨应用程序交付生命周期的技术之间的连接。如果不同的工具不能在彼此之间传递信息,那么筒仓就会持续存在。将没有足够的数据进行分析,也不可能跨工具填充测试套件。

因此,技术之间的连接至关重要,而短跑技术必须建立在开放技术的基础上.幸运的是,机器人过程自动化和DevOps编排工具可以帮助快速集成不同的技术。

基线数据

必须进一步收集这些不同工具产生的数据,为收获提供数据基线。然后,可以应用工具从这个单一的真理来源中获取洞见,告知测试人员需要什么来测试insprint。分析工具包括但不限于基于人工智能和ML的技术.

短跑测试与数据生成

在这一点上,数据已经收集和分析,表明什么需要测试在冲刺.但是,我们如何构建和执行这些信息所需的测试呢?

第一个组件是自动化测试生成,将这个生成与基线数据的分析联系起来。第二个问题是根据已经生成的测试自动生成和分配数据。这可以通过在测试运行时查找和生成数据的工具来实现,为每个动态测试提供丰富和兼容的数据。

开放式测试平台

如果您拥有所有这些组件,那么您就有了好奇号所称的开放式测试平台…开放测试平台从整个应用程序开发生态系统中收集数据,准确地确定什么需要测试in-sprint。它还构建了运行这些测试所需的测试和数据,使用数据驱动的洞察力实现了短跑测试自动化。

一个开放测试平台不是从系统需求出发,而是通过一系列的筒仓来分析来自整个开发生态系统的数据。因此,随着需求或环境的变化,它会通知和更新测试,而不是玩一个持续的追赶游戏。简而言之,开放测试平台支持短跑测试自动化.

那么福州小程序开发有多少家公司强呢?

版权所有:https://www.eraycloud.com 转载请注明出处