软件测试 52 讲
茹炳晟
腾讯 TEG 基础架构部 T4 级专家
71691 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 63 讲
结束语 (1讲)
软件测试 52 讲
15
15
1.0x
00:00/00:00
登录|注册

41 | 从小工到专家:聊聊测试执行环境的架构设计(下)

思考题
如何选择适合自己的测试基础架构?
测试负载自适应的测试基础架构
基于Jenkins集群的测试基础架构
引入统一测试执行平台的测试基础架构
基于Docker实现的Selenium Grid测试基础架构
基础架构的概念
测试基础架构的演进

该思维导图由 AI 生成,仅供参考

你好,我是茹炳晟,今天我和你分享的主题是“从小工到专家:聊聊测试执行环境的架构设计(下)”。
在上一篇文章中,我介绍了测试基础架构的概念,以及早期的和经典的两种测试基础架构。在文章的最后,我提到经典的测试基础架构中采用的 Selenium Grid 方案,在测试用例的数量持续增加的情况下,会带来集群扩容、Jenkins Job 臃肿不堪等诸多问题,因此我们考虑将 Selenium Grid 迁移到 Docker,并且提供便于 Jenkins Job 管理的统一测试执行平台。
所以,今天的这篇文章,我就会围绕这些瓶颈以及对应的解决方案来展开。

基于 Docker 实现的 Selenium Grid 测试基础架构

随着测试基础架构的广泛使用,以及大量的浏览器兼容性测试的需求,Selenium Grid 中 Node 的数量会变得越来越大,也就是说我们需要维护的 Selenium Node 会越来越多。
在 Node 数量只有几十台的时候,通过人工的方式去升级 WebDriver、更新杀毒软件、升级浏览器版本,可能还不是什么大问题。但是,当需要维护的 Node 数量达到几百台甚至几千台的时候,这些 Node 的维护工作量就会直线上升。虽然,你可以通过传统的运维脚本管理这些 Node,但维护的成本依然居高不下。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

测试基础架构的发展历程及技术特点 茹炳晟的文章介绍了测试基础架构的演进和技术创新。首先,他讨论了基于Docker实现的Selenium Grid测试基础架构,通过采用Docker降低了Selenium Node的维护成本,提高了并发执行能力。其次,他介绍了引入统一测试执行平台的测试基础架构,实现了测试用例的版本化管理和提供基于Restful API的测试执行接口供CI/CD使用。最后,茹炳晟提出了基于Jenkins集群的测试基础架构,解决了单个Jenkins成为瓶颈节点的问题。此外,他还探讨了Selenium Grid的自动扩容和收缩技术,以及如何选择适合自己的测试基础架构。整篇文章全面介绍了测试基础架构的发展历程和技术特点,为读者提供了对测试基础架构的全面了解。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《软件测试 52 讲》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(24)

  • 最新
  • 精选
  • mgxian
    我觉得可以整合现在大热的k8s实现自动扩缩容

    作者回复: 是的,k8s的确是个很棒的方案,但是我们没有采用的主要原因在于测试执行集群的我规模并没有大到非k8s不可,实施k8s的投入还是比较大的,如果后续集群规模继续扩大,我们就会考虑引入k8s,总之一句话就是工程上我们不求最先进,只求够用就好的原则

    2018-10-01
    6
  • Jecy-8
    CI-CD这块老师能不能再深入讲解一下,比如有没有用到可视化的工具来集成

    作者回复: cicd并不是这个专栏的重点内容,而且cicd不是靠一个工具就可以实现的,都是完整的一套工具链体系。

    2018-10-07
    1
  • Robert小七
    这一套架构估计能用到的企业也不多了

    作者回复: 大的互联网企业基本都是必须要有的,否则很难支持快速的迭代与发布

    2018-10-01
    2
    1
  • 小老鼠
    1、你们这个平台是开源的吗?若是我想要份 2、selenium 我不太喜欢,里面问题好多。比如IE浏览器对于复杂页面,比如淘宝、京东首页无法获得元素,同样Chrome、FireFox就没问题

    作者回复: 没有开源,目前看selenium还是比较靠谱的方案

    2018-11-29
  • CoolPanda
    不知道老师还会不会继续回复这里的问题? selenium-grid有个巨大的问题就是原生没有安全性选项,部署之后,所有能访问到console的URL的人都可以直接调用。请问老师是否真的在ebay内部大规模使用了,是自研二次开发了安全借口,还是借助防火墙网关等网络手段来控制访问? 谢谢。
    2019-07-17
    1
    5
  • 口水窝
    看完了演进的过程,有种酣畅淋漓,大快人心的感觉,在技术飞速发展分时代,作者能够把这些事件的东西通过原理的形式展现出来,点赞!再有疑问,对于这些演进的原材料,是从官方文档了解来的吗?
    2019-05-16
    4
  • Robert小七
    现在的公司用的基础架构和这个很像,但是多了基础用例,配置管理,mock,性能,等。可以算是一个真正的devops平台了!
    2019-05-22
    2
  • 楚耳
    老师这套环境只能支持基于seleium的ui脚本执行,换其它脚本就行不通了,如果是自己基于python写的接口脚本呢,有什么好的分布式执行框架吗?
    2019-04-21
    1
    1
  • 无心
    CI 持续集成,在工作环境中,确实很方便,跟踪项目质量测试结果,敏捷测试 快速的迭代
    2018-10-08
    1
  • Geek_67bb9d
    我想问一下测试用例的版本化管理 这个版本对应开发代码的版本 是一个增量用例的概念 还是全量呢?
    2023-06-18归属地:四川
收起评论
显示
设置
留言
24
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部