Jenkins 是一种流行的 CI 工具 —— 您应该使用测试自动化来扩展 Jenkins。
在 DevOps 的不同阶段,软件开发过程必须依赖于稳定的测试环境。团队需要稳定的测试自动化,以在 CI/CD 管道中持续覆盖其不断变化的 Web 和移动应用程序。与 CI/CD 管道良好集成的测试可加快发布、集成验证和对利益相关者的统一可见性。
继续阅读以了解如何创建可与 Jenkins 一起扩展的持续测试自动化的基础。
了解 DevOps 和 CI/CD/CT
CI/CD/CT 支持高效的管道和 DevOps 软件交付链。
开发运营
DevOps 是开发和运营的组合,或者说是人员、流程和技术的结合。这些元素协同工作,以跨不同地域和不同平台的规模持续为客户提供价值。
持续集成 / 持续交付
要持续交付价值,需要开发人员、运维人员、测试工程师、产品团队、业务部门和每个人。但要实现这一点,您必须拥有良好、可靠的管道,也称为 CI/CD 管道。要拥有良好的开发管道,您需要在每个阶段都有一个门以提供可靠的验证。这让您知道您可以自信地过渡到下一阶段。
在 DevOps 和 Agile 中,您希望尽早并尽快将持续检查和反馈循环发送回开发人员。这也称为左移测试,或有时右移。
连续测试适合的地方
将 CI 和 CD 结合在一起的粘合剂是 CT,也称为连续测试。它确保您能够执行为您带来价值且值得信赖的测试自动化。
持续测试依赖于测试自动化,但它不仅仅是测试自动化。这也是不同工具、技术和角色的统一。要进行持续测试并启用高效的 CI/CD,您需要在开发管道的每个门和每个阶段进行测试。这包括计划中的测试、构建验收测试中、软件构建中以及进行 Beta 验收测试时以及生产中的发布和发布后期间的测试。
Jenkins 测试自动化的挑战
不幸的是,现实情况是,在持续测试的过程中存在很多差距,这会降低测试自动化工程师的速度。有很多挑战会影响自动化覆盖范围、自动化稳定性和反馈循环,包括:
- 难以自动化的高级测试场景。
- 团队成员缺乏自动化技能。
- 耗时的测试维护。
- 数字平台覆盖率低。
- 缺乏自动化的时间。
- 设置具有挑战性的测试环境。
- 分析报告所花费的时间。
CI/CD/CT 中有很多复杂性,您需要对它们进行战略性分析。您需要在开发人员、测试自动化工程师、业务测试人员、产品管理人员和产品所有者之间达成共识并充分协作。通过协调每个人,您可以克服这些挑战 - 否则您将面临将缺陷转移到生产中的风险。
新兴技术复合挑战
似乎这些挑战还不够,我们还生活在不断变化的数字现实中。测试团队必须跟上的新技术包括:
- 可折叠智能手机
- 碎片化
- 渐进式网络增长和采用
- 新的自动化框架,如 Flutter 和 Cypress
- Android 中的 APK
- iOS 中的应用剪辑
- 和更多。
像这样的新技术不断被引入市场,并对您的测试自动化环境中发生的事情产生巨大影响。无论您是否对本机或混合应用程序进行了任何更改,都需要将维护融入您的流程中。
使用 Jenkins 扩展自动化测试的策略
如果您想开始构建持续测试活动并将它们与 Jenkins 合并到管道中,请从这里开始。
打造品质
如果您想建立一个强大的策略来扩展 DevOps 中的持续测试,您需要通过尽早测试来提高质量。在将其嵌入 Jenkins 之前,您需要有一个良好的认证测试自动化,您可以可靠地执行它。
您还需要了解功能、故事点以访问 Jira 设计活动和产品要求,以便您可以更早地开始在周期内构建测试。
跨 3 个角色的交流
这些活动需要在三个主要角色中并行发生:
- 业务测试员。
- SDET(测试中的软件开发人员)。
- 软件开发商。
他们需要有一个可靠的沟通层来解决支持的内容、产品要求和时间表。这三个角色还需要相互提供对框架、环境以及将用于构建测试用例和任何可以支持测试创建的数据的访问。
优先考虑自动化
您应该自动化哪些测试?战略性地解决这个问题。对于测试自动化策略,请考虑您的三个角色的技能集:业务测试员、SDET 和开发人员,并将技术与每个技能集相匹配。
您还需要考虑以下问题。自动化冲刺的范围是什么?目标是什么?您想从测试自动化投资中获得什么?
根据业务需求在您的应用程序中规划出最热门的场景。例如,这些可能包括以下功能:
- 登录。
- 买单。
- 转移资金。
像上面的例子一样绘制这些图表将帮助您优先考虑最关键的测试场景。这是确定哪些需要自动化以及哪些需要在周期内发生的直接方法。影响您的客户并且最常使用的主要场景 - 这些是需要仔细检查的场景。
并行测试
下一个考虑是并行测试。并行测试是增加覆盖率以将执行速度提升到最高水平并获得快速反馈的关键。你做并行测试是有原因的,你投资建立了一个坚实的测试自动化基础,你可以在每次代码更改时并行运行,因为这三个好处:
- 增加覆盖。
- 更快的执行速度。
- 更快的反馈。
最后能给予你助力的教程!
这份资料,对于【软件测试】的朋友来说应该是最全面最完整的备战资料,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,这些资料也陪伴了我走过最艰难的路,希望也能帮助到你!!!