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

39 | 从小作坊到工厂:什么是Selenium Grid?如何搭建Selenium Grid?

思考题
基于Docker的Selenium Grid的搭建方法
传统Selenium Grid的搭建方法
什么是Selenium Grid
主题总结

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

你好,我是茹炳晟,今天我分享的主题是“从小作坊到工厂:什么是 Selenium Grid?如何搭建 Selenium Grid?”。
从今天开始,我们就要一起进入测试基础架构这个新的系列了。我将用四篇文章的篇幅,从 0 到 1,为你深入剖析大型互联网企业的测试基础架构设计,以及其原始驱动力,和你探讨测试执行环境设计、测试报告平台设计以及测试基础架构与 CI/CD 的集成等内容。当然,在这其中还会涉及到很多具有前瞻性的设计创新。
虽说测试基础架构是资深测试开发人员的必备技能,但此时你可能还并不清楚测试基础架构到底指的是什么?没关系,当你阅读完这个系列的文章之后,相信你一定可以对测试基础架构,以及其关键设计有一个清晰、全面的认识。
所以,今天我就先和你分享一下,我眼中的测试基础架构到底是指什么?

什么是测试基础架构?

测试基础架构指的是,执行测试的过程中用到的所有基础硬件设施以及相关的软件设施。因此,我们也把测试基础架构称之为广义的测试执行环境。通常来讲,测试基础架构主要包括以下内容:
执行测试的机器;
测试用例代码仓库;
发起测试执行的 Jenkins Job;
统一的测试执行平台;
测试用例执行过程中依赖的测试服务,比如提供测试数据的统一测试数据平台、提供测试全局配置的配置服务、生成测试报告的服务等;
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Selenium Grid是一种用于并发执行GUI测试用例的测试执行机集群环境,采用HUB和Node模式。文章从介绍测试基础架构的概念入手,详细讨论了传统的“小作坊”模式存在的问题,以及Selenium Grid的优势和工作原理。作者通过对比律师事务所的例子,生动地解释了Selenium Hub和Selenium Node的对应关系,以及它们之间的工作流程。此外,文章还提到了Selenium Grid的搭建方法,包括传统的Selenium Grid和基于Docker的Selenium Grid。通过本文,读者可以快速了解Selenium Grid的概念、工作原理和搭建方法,为进一步深入学习测试基础架构奠定了基础。文章还探讨了基于Docker的Selenium Grid搭建方法,强调了其灵活性、高效性和可维护性。总结指出Selenium Grid功能强大,搭建方法简单,已广泛应用于测试执行环境的搭建中。最后,作者提出了思考题,探讨了在云端搭建Selenium Grid的可能性,展望未来的主流方案。

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

全部留言(17)

  • 最新
  • 精选
  • 元让
    Selenium Grid应该算是非常老的技术,在selenium 2.0包括后面的webdriver 出来后就应该应用比较少了,据说现在都有selenium 3.0了,为什么还用这么老的技术做UI 自动化

    作者回复: selenium grid和selenium 2.0/3.0是两种完全不同的东西,虽然都有selenium这个单词,但是两者之间没有可比性,grid是目前最常用也是主流的测试分布式执行架构,其可以和selenium1/2/3结合使用。而selenium1/2/3是gui自动化框架,1的原理和2和3的差别较大,具体可以参考之前的文章。至于你说grid是非常老的技术,不知道是从哪个角度来讲的,据我所知目前为止好像没有超过grid的测试执行解决方案。

    2018-09-26
    2
    18
  • Ping
    针对互联网应用的测试场景,selenium grid的方式(尤其是基于docker部署,以及未来云部署)是可以提供更灵活的测试发布,更快的执行效率。我的疑问是:如果测试场景严重依赖于执行顺序,每个场景都对数据强依赖且消耗系统资源较多的情况下,如何更好的利用selenium grid来有效提升执行效率呢?

    作者回复: 你的问题和selenium grid本身不相关,grid只是提供测试的执行环境,而和每个测试用例内部的执行顺序以及数据依赖没有关系,你的问题是在如何设计场景结偶的测试用例上,建议你参考前面gui和api测试设计的文章,比如如何做测试分层等等

    2018-09-26
    7
  • 阿嬷
    node上的浏览器实例是真实存在在机器上的吗?如何进行版本控制和登记呢?

    作者回复: 是真实的浏览器实例,具体可以参考selenium grid的官方文档,登记是在挂node的时候完成的,版本就是你在机器上安装的浏览器版本,可以多个

    2019-01-08
    2
  • 年轻人的瞎折腾^.
    请问做接口自动化的话用selenium brid 版本docker的框架吗?

    作者回复: 不适合,但是可以用docker来做API的测试发起机

    2019-01-13
    1
  • Joey
    写ui自动化是否都需要有可视化界面,比如我公司都是天翼云的centos服务器,能否做?

    作者回复: ui自动化的对象就是界面,所以是需要有界面的测试才适合用ui测试

    2018-09-29
    1
  • 一池浮萍
    感谢老师的分享

    作者回复: 感谢支持

    2018-09-26
  • 捷后愚生
    在学习selenium的时候,知道selenium有三大组件,SeleniumIDE、Selenium WebDriver、Selenoium Grid,重点学习了Selenium WebDriver,这篇文章让自己更加深入理解Selenoium Grid。
    2020-08-06
    9
  • (╯‵□′)╯︵┻━┻
    平台可以提供一站式selenium grid方案,包括node资源的自动创建与管理。从基础设施层到应用层都可以与云平台的其他工具整合,包括与部署在云端的CI/CD流水线进行集成。
    2019-08-22
    4
  • Rachel_fang
    老师主要讲的还是 grid的 分布式架构设计,如果要开发测试执行平台 可以参考这个架构设计
    2019-09-23
    2
  • 楚耳
    老师,我看到我们运维用的是Kubernetes这套东西
    2018-10-31
    1
    2
收起评论
显示
设置
留言
17
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部