实现连续测试,要做的事情【译】
拥抱自动化
即使通过在每个阶段手动测试代码以获取质量结果,也可以实现连续测试。尽管如此,测试自动化可以加快错误检测的速度以及作为过程一部分的其他一切。在每个阶段更快的解决意味着更快的软件发布。尽管从手动到自动化的转变不可能一蹴而就。但是,一旦实施,从长远来看,肯定会获得巨大的收益。在持续测试框架内实现自动化不仅仅意味着实施优化的回归测试套件。从单元测试开始,验证功能的代码片段和组件测试。这个端到端自动化通过保持连续性来缩小测试人员和 DevOps 团队之间的差距,从而解决更快的交付挑战。
集成持续测试工具
持续测试不仅仅是自动化的游戏,它当然需要一些更强大的工具形式的支持,以使过程更容易、更快、更有效。在市场上可用的无数工具中。使用 QuerySurge、Jenkins、Selenium、Bamboo 等工具,Travis 肯定有助于执行 CI/CD 管道。工具有助于消除任何不需要的手动干预并消除过时的操作,从而使测试人员能够专注于重要的事情,即测试。因此,在创建成功的持续测试方法时,决定正确的工具也是要考虑的重要方面之一。参考:如何选择正确的自动化测试工具、如何选择API测试工具。
跟踪指标
测试人员必须在测试过程中跟踪失败和成功。捕获真实数据使 QA 团队能够分析滞后并允许测量进度以及时采取纠正措施。分析检测到的错误与已纠正的错误的比率提供了真正的 ROI。跟踪指标的主要方面应包括跟踪总体缺陷以及在测试过程中失败或通过了多少测试脚本。这将允许企业确定一段时间内缺陷的增加或减少。如果缺陷增加,这当然意味着开发方面需要重新工作。此外,如果脚本失败较多,则必须重新分析测试策略以进行改进。
利用容器化
这是一个将应用程序的所有组件(如配置文件、框架和库)打包到其所需环境中的过程。但是为什么容器化对持续测试很重要?这是因为它使测试人员能够一次测试特定的代码而不是完整的应用程序。此外,测试容器还有助于通过将最新的代码增强功能推送到生产环境来保持环境的精简。
沟通透明
如果连续测试管道中的瓶颈和异常缺乏透明度,团队之间就会出现巨大的脱节,从而导致非生产性的滞后。因此,在团队内保持积极的平衡对于成功的连续测试过程是必不可少的。协作团队对于每个敏捷项目都至关重要。随着质量检查团队在SDLC
所有阶段的深入参与,开发人员和测试人员之间的沟通必须迅速进行,避免落后于不断的更新。一个有用的自动化测试工具为团队提供了强大的报告功能以及与CI/CD
管道的强大集成。
执行多层测试
应使用多层测试方法对 SDLC 中的所有层进行彻底测试,以确保完整的测试覆盖率。这意味着应该使用单元、API 集成、GUI 系统和数据库测试方法进行彻底的自动化测试。考虑到新兴软件技术的复杂性,尤其是在微服务的情况下,采用多层方法肯定有助于减轻繁琐的测试执行。
重视性能测试
性能测试是观察系统性能并寻找解决方案以克服任何可见缺陷的分析步骤。要检查应用程序的整体性能以及速度和稳定性,性能测试至关重要。因此,要了解应用程序是在尽其所能地工作、以最佳状态运行还是因大量使用而崩溃,性能测试可作为抵御所有这些挑战的屏障。如果应用程序不可靠,任何组织都不会产生巨大的投资回报。为了实现高性能,还可以使用与持续测试策略配合良好的各种工具来保持速度、管理低工作量脚本和创建并行执行。
结论
持续测试是影响整个测试机制(包括 DevOps 团队、持续测试方法、框架和技术)整体转型的最大变化,以快速交付无可挑剔的结果。最近的一份报告指出,在 80%的敏捷组织中,只有 30%采用了测试自动化。要认识到持续测试的重要性,重要的是要了解它如何通过提前分析其影响以及检查是否保持质量标准来帮助组织加快交付生产、提高测试速度、频繁发布产品、降低业务成本始终。
Have Fun ~ Tester !
版权声明: 本文为 InfoQ 作者【FunTester】的原创文章。
原文链接:【http://xie.infoq.cn/article/8859fe0e053d9152f191bb65e】。文章转载请联系作者。
评论