译自Nick Karlsson的《7 Agile Testing Trends to Watch for in 2020》一文
随着2020年的到来,寻求提高敏捷性的软件开发公司越来越关注将其测试方法与敏捷原则结合起来。让我们看看今年对组织影响最大的七个关键敏捷测试趋势。
1、质量工程
在敏捷环境中进行测试需要质量工程而非质量保证。不同之处在于,质量工程涉及对产品和过程的持续测试,同时大力利用自动化。它确保产品在软件实施期间经过有效的测试以清除bug。
测试不再是一个阶段,尽管很难使所有测试自动化,但应覆盖大部分。
质量工程的好处:
- 由于测试在各种平台和不同操作系统上持续进行,因此可以快速反馈产品信息;
- 通过及早和及时的反馈减少软件故障和返工;
2、左移测试
在左移过程中,更多类型的测试与软件开发同时进行。测试人员与开发人员协作,在编写代码之前创建测试用例和假设场景,然后使用这些测试驱动开发。
在传统的软件开发方法中,测试是发布过程中的瓶颈。因传统开发的时间通常被压缩,因此余留给测试人员测试和查找Bug的时间很少。当测试向左移动时,情况不再如此。测试人员还有时间与UI和API开发人员协作,甚至可以在软件构建之前检查其可用性。
左移测试的好处:
- 它减少了软件发布的上市时间;
- 它有助于在更短的时间内交付高质量的软件;
- 它可以提前识别瓶颈,以防止下游软件故障;
3、敏捷测试管理
如果开发人员和测试人员之间没有强有力的协作,敏捷是无效的。这包括如何计划测试,如何执行测试以及如何报告结果。
敏捷的测试管理流程和工具允许整个团队可以维护和跟踪测试进度,使得所有人信息对称。对于在分布式环境中工作的人员,基于云的测试管理工具可让其随时随地轻松地从世界各地访问测试信息。
敏捷测试管理的好处:
- 团队成员更容易跟踪测试工作并改善协作;
- 它通过确保完成充分的测试,减少bug的数量,并帮助发布高质量的软件;
- 它减少了开发人员和测试人员之间的反馈延迟,并确保对发现的问题进行实时反馈;
4、DevOps
DevOps基于精益管理的概念,使开发和运营有效地协同工作。它旨在消除软件开发生命周期中的浪费并加速软件交付。
敏捷和DevOps一起可以改善团队的整体沟通和协作,以减少软件故障和延迟。DevOps 将持续测试集成到开发和交付过程中,以确保持续生成高质量代码。
DevOps的优势:
- 它侧重于建立正确的文化并促使每个人都协作;
- 它将操作集成到团队中,以减少与环境相关的下游测试问题;
- 通过确保使用适当的工具测试每个代码更改,它有助于编码和测试过程的集成;
- 它有助于创建一个集成的、无缝的工作软件流,从开发到测试环境,再到生产;
5、持续测试
持续测试是持续执行测试并将测试人员纳入跨职能团队以测试功能并提供快速反馈的过程。它涉及早期测试,并且经常使用前面提到的左移、质量工程和敏捷测试管理功能。
持续测试的好处:
- 它通过及早和经常地发现问题来降低软件故障风险;
- 它通过持续的反馈和Review来提高软件质量;
- 它优化了测试套件,以覆盖业务风险并限制冗余;
6、精益投资组合管理
精益项目组合管理最重要的是软件开发项目根据组织策略和目标来调整这些工作和度量结果。使用一个持续的过程,并根据功能和用户故事的优先级以及整体高级策略将工作分配给团队。
精益强调自上而下的协作,以及正确规划、目标度量和透明性方面的因素,以便有效地工作。它还专注于消除项目审批瓶颈,以加快上市时间。
精益投资组合管理的好处: