Travis-CI + Sauce Connect + Behat:无法让Internet Explorer运行测试

Tro*_*ott 9 internet-explorer automated-tests behat travis-ci saucelabs

我让Travis-CI运行Sauce Connect来运行Behat测试.如果我告诉Sauce在Windows 7上使用Firefox 26,一切正常.但如果我将浏览器更改为Internet Explorer(Sauce Labs在Windows 7上提供的三个版本中的任何一个 - 即IE8,IE9和IE10 ),然后它不起作用.

显示IE浏览器测试的Sauce页面上,它显示了一个长视频,显示除了This is the initial start page for the WebDriver server.页面顶部显示的错误消息,显示浏览器屏幕截图为:Test did not see a new command for 90 seconds. Timing out.但是,截屏时间超过13分钟,所以它至少接受了一些命令,即使它从未对它们采取行动.

同时,在Travis方面,我看到了这个:

2014-02-18 04:34:13,124 - Request started: GET http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab?f20efc77fc170e42
2014-02-18 04:34:13,211 - GET http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab?f20efc77fc170e42 -> 200 (88ms, 6356 bytes)
2014-02-18 04:34:13,417 - Request started: GET https://ieonline.microsoft.com/iedomainsuggestions/ie10/201402/suggestions.en-US
2014-02-18 04:34:13,503 - GET https://ieonline.microsoft.com/iedomainsuggestions/ie10/201402/suggestions.en-US -> 200 (87ms, 18176 bytes)
No output has been received in the last 10 minutes, this potentially indicates a stalled build or something wrong with the build itself.
The build has been terminated
Run Code Online (Sandbox Code Playgroud)

我确实在Sauce Labs支持文档中找到了一个条目,表明这可能是由非常规端口引起的,但我在端口443上通过HTTPS运行我的应用程序,所以这似乎不是问题.

这是我通过Sauce运行Internet Explorer 9的Behat YAML配置文件:

# Use this profile to run tests on Sauce against the Travis-CI instance
default:
    context:
        class: "FeatureContext"
    extensions:
        Behat\MinkExtension\Extension:
            base_url: https://localhost
            default_session: saucelabs
            javascript_session: saucelabs
            saucelabs:
                browser: "internet explorer"
                capabilities:
                    platform: "Windows 7"
                    version: 9
Run Code Online (Sandbox Code Playgroud)

我正在运行Behat 2.5.2,虽然我遇到了与2.4.x相同的问题.

我不知道从哪里去或从这里做什么.我的下一步应该是什么?

jrj*_*son 1

我能够通过更改来解决这个问题:

base_url: https://localhost
Run Code Online (Sandbox Code Playgroud)

base_url: https://realhostname
Run Code Online (Sandbox Code Playgroud)

在 Behat 配置的 Behat\MinkExtension\Extension: 部分。

该主机名是使用主机插件在 .travis.yml 文件中设置的

addons:
  hosts:
    - realhostname
Run Code Online (Sandbox Code Playgroud)

我相信这与通过 localhost 进行的额外代理有关,这在底部提到: https: //saucelabs.com/docs/connect我不知道为什么这只影响 IE,但这个解决方案似乎工作。