实习生:您请求的环境不可用

时间:2014-02-20 09:13:06

标签: google-chrome firefox selenium intern

我们正在使用实习生来测试我们的应用程序。我们有三个不同的Intern配置文件,用于定位 Selenium 的本地实例,在本地虚拟机上运行的实例,或 Sauce Labs

Intern在本地实例和虚拟机上针对Firefox运行测试,没有错误。但是,当我将Chrome添加到我希望在本地和虚拟机实例上进行测试的浏览器列表时,我收到一条错误消息,指出:“您请求的环境不可用”。我知道所需的浏览器在两个位置都可用,事实上我知道这个过程在过去是有效的。可能有什么变化,我需要配置什么才能使Intern和/或Selenium再次看到Chrome?

我正在使用运行Windows 7的计算机,我安装的虚拟机会运行Ubuntu映像,并在此过程中仔细安装Firefox,Chrome和PhantomJS。

当针对Selenium的本地实例运行时,我们使用以下配置:

capabilities: {
    'selenium-version': '2.39.0'
},

environments: [
    { browserName: 'chrome' },
    { browserName: 'firefox' }
]

在Ubuntu VM上运行Selenium时,我们使用以下配置:

capabilities: {
    'selenium-version': '2.39.0'
},

environments: [
    { browserName: 'chrome' },
    { browserName: 'firefox' },
    { browserName: 'phantomjs' }
]

1 个答案:

答案 0 :(得分:1)

自提出这个问题以来,我在测试的VM版本上取得了一些进展。我们的setup.sh文件配置了添加到VM的各种组件,它引用了旧版的chromedriver:

旧配置:

wget "https://chromedriver.googlecode.com/files/chromedriver_linux64_2.3.zip"
unzip chromedriver_linux64_2.3.zip
mv chromedriver /usr/local/bin

变成了:

wget "http://chromedriver.storage.googleapis.com/2.9/chromedriver_linux64.zip"
unzip chromedriver_linux64.zip
mv chromedriver /usr/local/bin

目前我还无法让我们的测试的本地版本运行Chrome。就我所见,chromedriver作为实习生的一部分安装,即使我清除了我的npm缓存并重新安装,事实上即使我用手动下载的自动更换自动包含的chromedriver,它仍然给了我“您请求的环境不可用“fault。

回到VM环境,我们正在尝试使用PhantomJS。实习生似乎能够初始化Phantom的一个实例,但它会在任何测试运行之前挂起。 Phantom包含它自己的(ghost)驱动程序,我相信它的启动配置正确如下:

echo "Starting Phantomjs ..."
phantomjs --ignore-ssl-errors=true --web-security=false --webdriver=192.168.56.4:4444 &

如果有人指出我的本地计算机上的chrome工作和VM上的幻像工作,我将非常欢迎。