敏捷测试中的挑战和自动化风险

简介: 敏捷测试中的挑战和自动化风险

大家好,我是阿萨。前2期我们说了敏捷测试计划,敏捷测试策略以及敏捷测试四象限。 这一期我们就讲挑战和风险,什么挑战呢? 那就是敏捷开发流程中我们这些QA 的痛点,也称为挑战。 另外不同于传统的自动化,我们看看敏捷开发流程中的自动化测试的风险。


一. 敏捷开发流程中QA的挑战


  1. 敏捷宣言中说,工作的软件 胜于详尽的文档。 因为文档优先级很低,所以敏捷开发中出错概率更高。 最终给QA团队带来更多压力。
  2. 快速开发,所以测试分析新需求的时间更短了。测试设计以及分析特性满足需求的时间更少了。
  3. 测试在敏捷要扮演半个开发人员的角色去分析需求场景和组件测试。
  4. 测试执行时间被高度压缩。
  5. 准备测试计划时间更少
  6. 回归测试,就更加少了。
  7. 从质量守门员的角色要变成为质量的合作伙伴
  8. 要面对更多的需求更新和需求变更。

看完是不是觉得这就是我们敏捷下测试人员的最紧迫的痛点?


二. 敏捷过程中的自动化风险


UI 自动化 让我们对端到端验证更有信息。但是UI自动化执行时间长,维护成本高,甚至写UI 自动化耗费人力更多。所以UI 自动化在很长一段时间都很难产生正向收益。UI 自动化稳定性较差,对环境依赖程度高。同时失败用例的维护以及产品更新后导致UI 自动化 需要更新所需要花费的人力更多。同时 排查误报用例更是难上加难了。


如果UI 自动化没有CI、CD启动,完全靠人工去启动运行的话,很容易因为版本更新,环境配置等因素影响而失败。UI 自动化是为 回归测试 准备的,所以探索性测试和其他测试类型仍然需要继续做。许多商业上可用的自动化工具提供了简单的特性,比如自动捕获和重放手动测试用例。


这种工具鼓励通过UI进行测试,并导致测试本身的脆弱和难以维护。同样,将测试用例存储在版本控制系统之外会产生不必要的复杂性。为了节省时间,很多时候自动化测试计划没有计划好或没有计划,这导致测试失败。


在测试自动化过程中,测试配置和删除测试数据来恢复环境通常被忽略,而执行手动测试时,测试配置和恢复环境听起来是无缝的,无需做额外的事情。甚至无需做什么。生产力指标,例如每天创建或执行的测试用例的数量,可能会产生严重的误导,并可能导致在运行无用的测试上进行大量的投资。


投入产出比太低敏捷自动化团队的成员必须是有效的顾问:平易近人、合作、足智多谋,否则这个系统很快就会失败。因为会有各种各样的问题。自动化可能提出并交付测试解决方案,相对于所提供的价值,这些解决方案需要进行太多的持续维护。


自动化测试可能缺乏构思和交付有效解决方案的专业知识。它仅仅是实现某个测试用例的自动化而已。业务需求和客户需求可能并不涉及。从上面的描述中我们可以看出,自动化的高维护性,低健壮性和稳定性。 以及对测试自动化配置和恢复环境初始状态都会是阻拦UI 自动化进程的大老虎。


三 . 结论


结合前几期的内容,我们得出的结论有:敏捷测试包括在软件开发生命周期中尽可能早地进行测试。它要求客户高度参与。代码应该足够稳定,可以进行系统测试。可以进行广泛的回归测试,以确保bug得到修复和测试。最重要的是,团队之间的沟通使敏捷测试成功。

如果内容让你有收获,欢迎点赞关注



相关文章
|
4天前
|
运维 Ubuntu 测试技术
自动化运维的利剑:Ansible在配置管理中的应用软件测试的艺术:探索性测试的深度与广度
【8月更文挑战第27天】 在数字化浪潮中,高效的运维工作是支撑企业IT系统稳定运行的关键。Ansible,作为一款简易而强大的自动化运维工具,正逐渐成为IT专业人士的新宠。本文将通过浅显易懂的语言和生动的案例,带你了解Ansible的核心概念、安装步骤、基础命令以及它在配置管理中的实际应用。我们的目标是让初学者能够轻松上手Ansible,同时为有经验的运维工程师提供一些实用的技巧和思路。
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
探索软件测试的未来:AI与自动化的融合
在数字化浪潮中,软件测试正经历着前所未有的变革。本文将带领读者穿越时间的长河,探讨软件测试的演变历程,并着重分析人工智能和自动化技术如何重塑这一领域。文章旨在启发思考,预测未来趋势,同时以通俗易懂的方式,为初学者和资深从业者提供有价值的见解和建议。
|
9天前
|
测试技术 开发工具 iOS开发
iOS自动化测试方案(三):WDA+iOS自动化测试解决方案
这篇文章是iOS自动化测试方案的第三部分,介绍了在没有MacOS系统条件下,如何使用WDA(WebDriverAgent)结合Python客户端库facebook-wda和tidevice工具,在Windows系统上实现iOS应用的自动化测试,包括环境准备、问题解决和扩展应用的详细步骤。
17 1
iOS自动化测试方案(三):WDA+iOS自动化测试解决方案
|
1天前
|
监控 测试技术 Python
软件测试的艺术与科学:探索测试自动化的奥秘
【8月更文挑战第30天】在软件开发的海洋中,测试是那把确保航船不偏离航线的罗盘。本文将带您一探究竟,从测试的基础到高级自动化策略,揭示如何通过代码和工具提升测试效率。准备好启航,因为我们将深入探讨软件测试的核心,以及如何利用自动化技术来优化您的测试流程。
11 4
|
1天前
|
物联网 测试技术 持续交付
软件测试的艺术与科学:探索自动化测试框架未来技术的融合与创新:探索区块链、物联网和虚拟现实的交汇点
【8月更文挑战第30天】在软件开发的海洋中,测试是确保航行安全不可或缺的灯塔。本文将带领读者揭开软件测试神秘的面纱,深入理解自动化测试框架的重要性和实现方法。通过实际案例,我们将一起探索如何构建高效、可靠的自动化测试系统,从而保障软件质量,提升开发效率。
|
2天前
|
测试技术
基于LangChain手工测试用例转Web自动化测试生成工具
该方案探索了利用大模型自动生成Web自动化测试用例的方法,替代传统的手动编写或录制方式。通过清晰定义功能测试步骤,结合LangChain的Agent和工具包,实现了从功能测试到自动化测试的转换,极大提升了效率。不仅减少了人工干预,还提高了测试用例的可维护性和实用性。
12 4
|
1天前
|
敏捷开发 测试技术 持续交付
软件测试中的自动化策略与实践云计算时代的网络安全挑战与对策
【8月更文挑战第30天】在软件开发的海洋中,自动化测试是一艘能够带领团队高效航行的帆船。本文将探讨如何搭建这艘帆船,从选择适合的自动化测试框架开始,到编写有效的测试脚本,再到持续集成的实施和测试结果的分析,我们将一步步揭开自动化测试的神秘面纱。你将学习到如何通过自动化测试来提升软件质量和开发效率,以及如何克服实施过程中的挑战。让我们一起启航,探索自动化测试的世界。
|
4天前
|
机器学习/深度学习 人工智能 算法
探索软件测试的未来:AI与自动化的融合之路
【8月更文挑战第27天】在数字化浪潮中,软件测试正经历一场由人工智能(AI)和自动化技术驱动的变革。本文将揭示这一趋势如何重塑测试流程,提升效率,并预测未来的发展方向。我们将一起走进智能测试工具的世界,探索它们如何协助人类同事确保软件质量,并展望一个更加互联、高效和智能的软件测试新时代。
|
4天前
|
机器学习/深度学习 人工智能 算法
探索软件测试的未来:自动化与AI的融合之路移动应用开发的新纪元:从原生到跨平台
【8月更文挑战第27天】在软件开发的世界中,测试是确保产品质量的关键步骤。随着技术的不断进步,传统的手动测试方法正逐渐被自动化和人工智能(AI)技术所取代。本文将探讨自动化测试的现状与挑战,并展望未来AI如何重塑软件测试领域,同时提供实用的代码示例,引领读者一窥自动化测试的未来趋势。
|
3天前
|
敏捷开发 测试技术 数据安全/隐私保护
自动化测试的高效之路:如何利用Python和Selenium提升测试效率
【8月更文挑战第28天】本文旨在探讨通过Python语言结合Selenium框架来提高软件测试的效率。文章不仅介绍了自动化测试的基本概念,还提供了具体的代码示例,帮助读者理解如何实现自动化测试脚本,并指出了在实施过程中可能遇到的问题及其解决方案。通过本文,读者将学会如何有效地使用Python和Selenium工具,以减少重复性工作,提升测试流程的效率与准确性。
下一篇
云函数