Selenium Webdriver 3.X源码分析之DesiredCapabilities分布式测试解决方案
  zNRyot8onCGb 14天前 19 0

> Selenium Webdriver 3.X源码分析系列第7篇,该系列原则上会将整个源码分享一遍

在大家的实践当中,经常需要在不同的环境(浏览器)中执行测试,在selenium webdriver中如何来实现在不同的环境中执行测试脚本呢?

在selenium webdriver python驱动代码中提供了DesiredCapabilities类提供了相应的解决方案。

我们先看下DesiredCapabilities类定义中的文档说明

Selenium Webdriver 3.X源码分析之DesiredCapabilities分布式测试解决方案

简单一句话:

        基于selenium grid 构建分布式自动化测试,selenium server/selenium grid根据测试脚本构建的DesiredCapabilities参数来决定将测试脚本分发到哪台机器或设备进行测试。

一个简单的实例:

Selenium Webdriver 3.X源码分析之DesiredCapabilities分布式测试解决方案

代码注释说明:

第1行:从selenium包导入了webdriver对象

第4行:设置本地的selenium grid地址,如果你的selenium grid在其他机器启动,请使用对应的ip和端口

第7-9行:构建了一个windows 10 + firefox的desiredcapabilities对象,即将测试脚本分发至win10+firefox的环境运行

第12行:启动远程的webdrive服务

划重点:应该讲在需要一个相对复杂的测试环境时,才需要应用到DesiredCapabilities类提供的解决方案,尤其是需要分布式测试环境时。

下面我们看下DesiredCapabilities类提供了哪些环境:

Selenium Webdriver 3.X源码分析之DesiredCapabilities分布式测试解决方案

基本上我们用的的各种浏览器、设备均有覆盖到,下面看看具体的配置源码:

Selenium Webdriver 3.X源码分析之DesiredCapabilities分布式测试解决方案

一般而言,我们需要指定browserName、version、platform即可

最后总结下,在如下所示的分布式复杂环境里

Selenium Webdriver 3.X源码分析之DesiredCapabilities分布式测试解决方案

是必须使用到DesiredCapabilities类提供的解决方案的。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 14天前 0

暂无评论

推荐阅读
  HJwyUgQ6jyHT   2024年03月22日   41   0   0 集合java
zNRyot8onCGb
最新推荐 更多