文本

高效连续测试策略的4个要素

通常,当组织计划和实现一个有效的测试自动化策略时,他们相信他们正在实现持续的测试。他们错了。 测试自动化当然是连续测试最关键的组件之一。但是,实现持续测试首先需要一个多层次的测试策略,包括所有需要的测试类型和级别ーー包括单元测试、集成测试、功能测试、探索测试和自动测试。持续测试还必须具有在整个持续集成管道中包含测试的策略。 组织转向 DevOps 来增加价值,通过最大化交付速度而不牺牲质量来改善客户体验。通过实现一个持续交付管道来交付,这需要持续的测试。 但是什么是持续测试呢?这种做法不仅仅是在整个软件交付管道中执行自动化测试,而且还提供与潜在发布相关的风险的即时反馈。 持续测试需要持续的业务和技术风险分析,以及整个持续集成过程中的过程改进和自动化。同样重要的是建立一种文化,在这种文化中,质量是每个团队成员的共同责任。它基于一种管理风险的方法,这种方法通过提高测试过程的有效性和效率来消除测试瓶颈。 以下是有效的连续测试策略的四个关键步骤,以及您需要了解的每个步骤。

  1. 简化测试流程 这有三个组成部分: 关注业务风险,识别和减轻瓶颈,以及优化您的测试。 DevOps 的最终目标,也就是持续测试的目标,是减轻业务风险,业务风险由客户风险和组织风险组成。 客户风险包括理解哪些应用程序工作流对客户最重要,并相应地规划基于风险的测试覆盖率。 组织风险包括理解商业环境的复杂性以及产品本身。例如,是先进入市场至关重要,还是产品的健康或安全更重要?一旦准确地评估了整个业务风险,您就应该将需求、应用程序组件和测试映射到这些风险。 识别并减轻瓶颈非常重要; 它们会同时影响质量和速度。从需求到后期生产检验,测试过程的限制因素都可以找到。一些例子包括测试人员没有被包含在待办事项细化中,因此他们没有机会帮助构建验收标准,缺陷没有及时处理,自动化测试套件运行时间过长,以及生产后检验是手动完成的。 优化你的测试 测试优化是连续测试的有效自动化策略的基础,它是选择正确的测试以最少的测试用例提供所需的测试覆盖率的实践。 这种实践有许多应用,从基于风险的测试选择到选择测试进行目标测试和新特性的回归。它是一个动态的、持续的过程,尤其是作为连续测试框架的一部分应用时。测试优化应该在自动化之前进行,并且必须贯穿整个连续测试过程。

这里的第一步是通过理解关键用户工作流中涉及的所有集成来优化测试范围,包括这些应用程序中使用的技术(web、移动、消息/api 层等)。 一旦您清楚地理解了测试范围,下一步就是优化测试用例。这不仅包括分析测试用例的质量和详细程度,还包括选择提供最大程度测试覆盖率的测试。您的测试套件应该被设计为以最少的测试用例数量提供最大的覆盖率,以提高质量和速度。 测试优化是一个动态的过程。评估有效性是维护优化测试套件的关键部分。这个套件应该不断地被评估,以便不再需要的测试,解决片状测试,并基于新的特性添加新的测试。 持续测试需要在整个交付管道中实现测试自动化。测试自动化提高了部署的速度,降低了持续交付中固有的风险。 但是持续测试框架中的自动化不仅仅是开发和维护一个自动化的回归套件。实际上,自动化的回归套件,尤其是那些隔夜运行的套件,会在持续部署过程中造成瓶颈。持续测试需要一个测试自动化策略,这个策略能够增强而不是阻碍持续交付过程。仅仅实现一个优化的回归测试套件是不够的。自动化测试策略必须包括构建过程中每个步骤中的自动化检查点。首先进行单元测试,验证单个代码片段和组件测试,以验证关键特性。基于风险的回归测试套件应该根据您当前实现的特性进行自定义。 自动化测试一直持续到生产阶段,通过部署后的健康状况检查来确保应用程序的启动和运行。作为最后一步,生产监控应该在客户发现功能和性能问题之前发现它们。 在您的持续测试策略中,测试自动化必须设计为高效运行,同时提供可靠、一致、可重复的结果。您的自动化策略必须得到很好的开发,包括测试维护计划和自动化测试应该在交付管道的特定点运行的时间表。 为了实现一个成功的持续测试策略,团队必须遵循质量工程的左移原则,即在开发过程中尽早进行测试。质量工程是在整个过程中构建质量的实践; 它从开发开始,侧重于预防缺陷,而不是发现缺陷。左移测试使质量工程和连续测试成为可能。 测试驱动开发、行为驱动开发、验收测试驱动开发都是用来“左移”的技术 在 TDD 中,开发人员和测试人员首先共同设计测试,然后开发代码以使测试通过。BDD 是一种侧重于客户行为的设计 TDD。ATDD 致力于以客户为中心的设计,其中“三个朋友”ーー开发人员、测试人员和产品负责人ーー在设计会议上分担责任并共同工作。 对于非功能性测试,采用左移方法也很重要。由于在设计中可以发现许多性能和安全缺陷的根本原因,因此在设计最终确定之前及早发现缺陷是至关重要的。当您直到过程的后期才发现这些缺陷时,它们会变得更加复杂,修复起来也更加昂贵。 4. 对质量负责 这一步是连续测试策略的基础。除非所有团队成员都接受他们在质量保证中的角色,否则就不可能成功地实现其他要素。

承担质量责任需要转变观念,而这种观念必须由高层领导。教育是至关重要的,因为团队中的每个成员都必须了解他或她在质量工程中所扮演角色的性质。

author

石头 磊哥 seven 随便叫

company

thoughtworks(离职了。。。。)

大家好,本人不才,目前依旧混迹于thoughtworks,做着一名看起来像全栈的QA,兴趣爱好前端,目前是thoughtworks 西安QA社区的leader,如果有兴趣分享话题,或者想加入tw,可以找我

roles

QA(营生) dev(front-end dev 兴趣爱好)

联系方式

如果想转载或者高薪挖我 请直接联系我 哈哈

wechat:

qileiwangnan

email:

qileilove@gmail.com