2017-04-01 76 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