跨平台WebRTC浏览器测试:Chrome,Firefox,Edge和Safari

作者:Philipp Hancke(原文链接

翻译:刘通

原标题:Cross Platform WebRTC Browser Testing: Chrome, Firefox, Edge & Safari

 

cross1

         现在苹果已经将WebRTC加入了自家的Safari浏览器,那么是时候提出这个问题了:你应该怎么在不同的操作系统上测试4种WebRTC浏览器呢?使用Selenium Grid会出人意料的简单,现在来学学怎么用吧。

         Webkit最近刚刚加入了WebRTC这个群,也就意味着我们现在需要测试5个主要浏览器:

         # Chrome,任何操作系统

         # Firefox,任何操作系统

         # Microsoft Edge,Windows10系统

         # Safari,OSX系统

         几天之前我们还可以在同一个操作系统上测试所有的WebRTC浏览器(Chrome,Firefox和Edge浏览器都可以在Windows 10系统上运行)。但是现在Safari也加入了,一个操作系统就不满足了。听上去好像是个大问题?然而并不是。

         这种测试通常都可以用Selenium远程遥控浏览器来完成。如果浏览器已经处在远程遥控的状态下,那么测试就可以通过Selenium的网格功能来完成,而这个过程出人意料的简单。

         比如说,我们现在想要在Windows电脑上面测试Edge和Safari浏览器。第一步是下载Selenium单独的jar文件。我用的还是3.3.1版本。之后,通过运行下列代码在电脑上设定一个Selenium网格hub:

cross2

         这会建立一个hub,你需要将你的Selenium节点连接到这个hub。它会告诉你你需要将节点连到的URL。

         接下来,在你的OSX电脑上运行下列代码来开启一个节点:

cross3

         这会在你的Safari实例上建立一个节点。

         现在,你需要建立运行Selenium的代码,让其完成这两件事情:

# 像这个链接里一样使用Safari浏览器

# 让其使用这里所展示的hub

         接下来运行你的测试代码。如果它立刻就能运行,那么没问题。如果不能立刻运行,你就可能需要花费一些时间来解决问题。最常见的问题是忘了加入hub创建路径中各自的WebDriver库。

填写常用邮箱,接收社区更新

WebRTC 中文社区由

运营