Tag: watir

Watir Chrome无头docker

我试图通过在Docker上运行我的testing套件来简化我的Seleniumtesting。 我正在运行一个Debian Jessie的图像,安装了从PPA和chromedriver 2.33安装的google-chrome-stable。 我还附加了/ dev / shm来最大化我的内存容器。 我已经validation了chromedriver在容器内运行良好。 但是,当我运行一个简单的testing时,我得到一个超时: browser = Watir::Browser.new :chrome, headless: true browser.goto 'google.com' browser.text_field(title: 'Search').set 'Hello World!' browser.button(type: 'submit').click puts browser.title browser.quit /usr/local/lib/ruby/2.4.0/net/protocol.rb:176:in `rbuf_fill': Net::ReadTimeout (Net::ReadTimeout) from /usr/local/lib/ruby/2.4.0/net/protocol.rb:154:in `readuntil' from /usr/local/lib/ruby/2.4.0/net/protocol.rb:164:in `readline' from /usr/local/lib/ruby/2.4.0/net/http/response.rb:40:in …… 有一点要提到的是,chromedriver安装在/ chromedriver / chromedriver,然后添加到$ PATH。 Watir / Selenium是否需要知道镀铬汽油的完整path? 是否需要在后台运行chromedriver或铬?

Firefox中的一个docker容器可以从另一个selenium访问

我有一个Docker容器,运行一个rails应用程序(我们称之为容器A),它需要使用firefox作为后端,使用watir webdriver进行一些修改。 我已经安装在另一个容器(容器B)的火狐,我想能够通过容器一样的东西: Selenium::WebDriver::Firefox::Binary.path= $DOCKER_RUN_CONTAINER_A 所以,每次watir启动firefox,一个新的CONTAINER_A实例都会启动一个新的firefox。 我知道容器使用端口进行通信很容易,但可执行文件怎么样? 顺便说一句,它看起来像一个好的devise理念隔离火狐在一个单独的容器?