2017-04-01 60 views
0

当我在命令行发出命令量角器,具有以下配置:量角器无硒服务器

'use strict'; 

// Protractor configuration 
var config = { 
    specs: ['test/e2e/*spec.js'] 
}; 

if (process.env.TRAVIS) { 
    config.capabilities = { 
    browserName: 'firefox' 
    }; 
} 

exports.config = config; 

我得到这个:

$ protractor 
[12:22:23] I/launcher - Running 1 instances of WebDriver 
[12:22:23] I/local - Starting selenium standalone server... 
[12:22:24] I/local - Selenium standalone server started at http://10.0.0.242:55414/wd/hub 
Started 
. 


1 spec, 0 failures 
Finished in 8.223 seconds 

[12:22:33] I/local - Shutting down selenium standalone server. 
[12:22:33] I/launcher - 0 instance(s) of WebDriver still running 
[12:22:33] I/launcher - chrome #01 passed 

的问题是,它需要至少5秒钟启动“硒独立服务器”。

有两个问题 - (1)我是否需要该服务器来运行测试?和(2),有没有办法在后台运行服务器,而无需每次都重新启动服务器?

回答

1

您还可以在量角器配置中使用硒服务器jar。检出样品波纹管。这在使用幻影时也很方便。

seleniumServerJar: '../utils/selenium-server-standalone-2.53.1.jar',

seleniumPort:4444,

化妆用户seleniumAddress在配置被注释掉

1

你使用量角器DirectConnect选项吗?如果是这样,您也可以使用独立的webdriver-manager。量角器也将其用作依赖项。

对于本地开发,我将它安装为npm install webdriver-manager -g,然后使用webdriver-manager update进行更新,并从webdriver-manager start开始。然后它将在默认端口4444的后台运行,运行webdriver-manager以查看所有选项。

然后,您不需要为每个测试/套件启动webdriver。

希望它有帮助

+0

感谢,对不起,我忘了复制我的配置,只是将它添加到问题中。这并不奏效 - DirectConnect选项是一个命令行标志吗?或者一个配置字段? –

+0

ok我在配置文件中使用了“directConnect:true”,但它工作正常 - 但相反,理想情况下,我可以与运行后台的selenium webdriver服务器通讯 –

+1

您的配置有点小,如果您想要与Selenium服务器交谈背景你至少需要添加'config.seleniumAddress ='http:// localhost:4444/wd/hub';'。然后它将执行该地址的所有测试。 – wswebcreation