使用Firefox在Linux上使用Xvfb进行无头测试自动化Jenkins CI服务器 [英] Headless test automation with Firefox using Xvfb on linux Jenkins CI server

查看:898
本文介绍了使用Firefox在Linux上使用Xvfb进行无头测试自动化Jenkins CI服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图使用Xvfb与firefox运行测试自动化headless。



  XSERVTransSocketOpenCOTSServer:Unable为inet6_XSERVTransOpen打开套接字:inet6 / cvms1247的传输打开失败:99_XSERVTransMakeAllCOTSServerListeners:无法打开侦听器inet6Initializing内置扩展Generic Event ExtensionInitializing内置扩展SHAPEInitializing内置扩展MIT-SHMInitializing内置扩展XInputExtensionInitializing内置扩展XTES内化扩展BIG-REQUESTSInitializing内置扩展SYNCInitializing内置扩展XKEYBOARDInitializing内置扩展XC-MISCInitializing内置扩展SECURITYInitializing内置扩展XINERAMAInitializing内置扩展XFIXESInitializing内置扩展RENDERInitializing内置扩展RANDRInitializing内置扩展COMPOSITE初始化内置扩展DAMAGEInitializing内置扩展MIT-SCREEN-SAVER初始化内置扩展DOUBLE-BUFFER初始化内置扩展RECORDInitializing内置扩展DPMSInitializing内置扩展PresentInitializing内置扩展X-Re​​sourceInitializing内置扩展在扩展XVideoInitializing内置扩展XVideo-MotionCompensationInitializing内置扩展SELinuxInitializing内置扩展GLX  



然后我尝试了以下命令:

  Xvfb:001 -nolisten inet6 
export http_proxy = http-proxy.nwie.net:8080

以下讯息消失。



XSERVTransSocketOpenCOTSServer:无法打开inet6的套接字
_XSERVTransOpen:inet6 / cvms1247的传输打开失败:99
_XSERVTransMakeAllCOTSServerListeners:无法打开监听器inet6

无头的用法:

 如果OS :: windows? || ENV ['PhantomJS'] =='true'
browser = Selenium :: WebDriver.for:remote,url:'http:// localhost:8001'
elsif OS :: linux?
需要'headless'
headless = Headless.new
headless.start
browser = Selenium :: WebDriver.for:firefox
at_exit do
浏览器。关闭
headless.destroy
end
else
raise'未知操作系统'
end

环境:

  Ruby:1.9.3 
Jenkins:1.58
Selenium webdriver:2.53
headless:2.3.1
Xvfb:yum install xorg-x11-server-Xvfb
firefox:33.0
Linux:2.6.32-573.12。我缺少了什么?

=h2_lin>解决方案

没有错误,或者您忘了添加它。



您发布的示例输出不包含单词error。



您可能会被无法打开套接字inet6消息误导。对我来说,这看起来像信息消息ipv6不会被这个x服务器使用。初始化之后成功,所以很可能ipv4工作ok或某事。


I am trying to use Xvfb with firefox to run test automation headless. However, I am getting the following message on starting xvfb.

XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
_XSERVTransOpen: transport open failed for inet6/cvms1247:99
_XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension SECURITY
Initializing built-in extension XINERAMA
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension RECORD
Initializing built-in extension DPMS
Initializing built-in extension Present
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension SELinux
Initializing built-in extension GLX

Then I tried the following command:

  Xvfb :001 -nolisten inet6
  export http_proxy=http-proxy.nwie.net:8080

The following message disappeared.

  XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
 _XSERVTransOpen: transport open failed for inet6/cvms1247:99
 _XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6

The usage of headless:

  if OS::windows? || ENV['PhantomJS'] == 'true'
    browser = Selenium::WebDriver.for :remote, url: 'http://localhost:8001'
  elsif OS::linux?
    require 'headless'
    headless = Headless.new
    headless.start
    browser = Selenium::WebDriver.for :firefox
    at_exit do
      browser.close
      headless.destroy
    end
  else
    raise 'Unknown OS'
  end

Environment:

 Ruby: 1.9.3
 Jenkins: 1.58
 Selenium webdriver: 2.53
 headless: 2.3.1
 Xvfb: yum install xorg-x11-server-Xvfb
 firefox: 33.0
 Linux: 2.6.32-573.12.1.el6.x86_64

What am I missing?

解决方案

There is no error, or you forgot to include it.

The example output you posted does not contain the word "error".

You might be misled by the "Unable to open socket for inet6" message(s). To me this looks like informational messages that ipv6 will not be used by this x server. Initialization after that succeeds, so most likely ipv4 worked ok or something.

这篇关于使用Firefox在Linux上使用Xvfb进行无头测试自动化Jenkins CI服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆