Selenium WebDriver API에 대한 노드 래퍼 Nightwatch을 사용하여 자동화 된 통합 테스트 스위트를 빌드 중입니다. Chrome에서 올바르게 작동하지만 Firefox (또는 Safari)에서는 올바르게 작동하지 않습니다.Nightwatch 및 Selenium으로 localhost를 테스트 할 때 Firefox에서 페이지를로드 할 수 없습니다.
문제는 GeckoDriver 대 Firefox 드라이버와 관련이 있다고 생각합니다. 내 nightwatch.json
에 GeckoDriver를 사용하도록 Nightwatch를 구성했습니다. 그러나 Selenium은 터미널 출력이 nightwatch -e firefox --verbose
인 Firefox 드라이버를 찾고있는 것으로 보입니다. 아래를 참조
INFO Request: POST /wd/hub/session/2c156cf4-10cb-44b2-8b1f-c12312b4633f/url
- data: {"url":"localhost:9000"}
- headers: {"Content-Type":"application/json; charset=utf-8","Content-Length":24}
ERROR Response 500 POST /wd/hub/session/2c156cf4-10cb-44b2-8b1f-c12312b4633f/url (1218ms) { state: 'unknown error',
sessionId: '2c156cf4-10cb-44b2-8b1f-c12312b4633f',
hCode: 1111219279,
value:
{ additionalInformation: '\nDriver info: org.openqa.selenium.firefox.FirefoxDriver\nCapabilities ...
내 Nightwatch 설정 파일입니다
{
"src_folders": ["./nightwatch/tests"],
"output_folder": "./nightwatch/reports",
"custom_commands_path": "",
"custom_assertions_path": "",
"page_objects_path": "./nightwatch/tests/pages",
"globals_path": "",
"selenium": {
"start_process": true,
"server_path": "./nightwatch/selenium-server-standalone-3.4.0.jar",
"log_path": false,
"cli_args": {
"webdriver.chrome.driver": "./nightwatch/drivers/chromedriver",
"webdriver.gecko.driver": "./nightwatch/drivers/geckodriver"
}
},
"test_settings": {
"default": {
"desiredCapabilities": {
"javascriptEnabled": true,
"acceptSslCerts": true
}
},
"chrome": {
"desiredCapabilities": {
"browserName": "chrome"
}
},
"firefox": {
"desiredCapabilities": {
"browserName": "firefox",
"marionette": true
}
}
}
}
그리고 좋은 측정을 위해, 여기 내 테스트에 액세스를 시도하고있는 nightwatch/pages/index.js
파일입니다
module.exports = {
url: 'localhost:9000',
elements: {
// stuff
}
}