I'm running the following test using Nightwatch + Selenium + GeckoDriver:
When this is run I am expecting response.value.ELEMENT to be the element's ID and the result.value to be true. This is the case when run in Chrome, but the following error occurs in Firefox:
Error: Error while running "elementIdSelected" command: First argument passed to .elementIdSelected() should be a web element ID string. Received undefined. See https://nightwatchjs.org/api/elementIdSelected.html at processTicksAndRejections (internal/process/task_queues.js:93:5)
Sample test
sampleTest.js
```js
// Please add the sample test here
module.exports = {
sampleTest: function(browser) {
browser.element(
"css selector",
"input[autofocus]",
function(response) {
browser.elementIdSelected(response.value.ELEMENT, function(
result
) {
browser.assert.ok(result.value, "Radio button Mr is selected");
});
}
)
}
}
```
Run with command
$ nightwatch test/sampleTest.js -e firefox
Verbose output
debug.log
```txt
Running command: element ('css selector', 'input[autofocus]', [Function])
Request POST /wd/hub/session/a616cf4f-49cf-1c4f-9d8e-b5a58df23377/element
{ using: 'css selector', value: 'input[autofocus]' }
Response 200 POST /wd/hub/session/a616cf4f-49cf-1c4f-9d8e-b5a58df23377/element (10ms)
{
state: 'success',
sessionId: null,
value: {
'element-6066-11e4-a52e-4f735466cecf': '968f68d6-ecf0-9b4b-b867-5dadad82680a'
},
status: 0
}
→ Completed command: element ('css selector', 'input[autofocus]', [Function]) (11ms)
→ Running command: elementIdSelected (, [Function])
→ Completed command: elementIdSelected (, [Function]) (1ms)
→ Running [afterEach]:
→ Completed [afterEach].
FAILED: 1 errors and 6 passed (12.687s)
Error: Error while running "elementIdSelected" command: First argument passed to .elementIdSelected() should be a web element ID string. Received undefined.
See https://nightwatchjs.org/api/elementIdSelected.html
at processTicksAndRejections (internal/process/task_queues.js:93:5)
```
Describe the bug
Hi,
I'm running the following test using Nightwatch + Selenium + GeckoDriver:
When this is run I am expecting
response.value.ELEMENT
to be the element's ID and theresult.value
to be true. This is the case when run in Chrome, but the following error occurs in Firefox:Error: Error while running "elementIdSelected" command: First argument passed to .elementIdSelected() should be a web element ID string. Received undefined. See https://nightwatchjs.org/api/elementIdSelected.html at processTicksAndRejections (internal/process/task_queues.js:93:5)
Sample test
sampleTest.js
```js // Please add the sample test here module.exports = { sampleTest: function(browser) { browser.element( "css selector", "input[autofocus]", function(response) { browser.elementIdSelected(response.value.ELEMENT, function( result ) { browser.assert.ok(result.value, "Radio button Mr is selected"); }); } ) } } ```
Run with command
Verbose output
debug.log
```txt Running command: element ('css selector', 'input[autofocus]', [Function]) Request POST /wd/hub/session/a616cf4f-49cf-1c4f-9d8e-b5a58df23377/element { using: 'css selector', value: 'input[autofocus]' } Response 200 POST /wd/hub/session/a616cf4f-49cf-1c4f-9d8e-b5a58df23377/element (10ms) { state: 'success', sessionId: null, value: { 'element-6066-11e4-a52e-4f735466cecf': '968f68d6-ecf0-9b4b-b867-5dadad82680a' }, status: 0 } → Completed command: element ('css selector', 'input[autofocus]', [Function]) (11ms) → Running command: elementIdSelected (, [Function]) → Completed command: elementIdSelected (, [Function]) (1ms) → Running [afterEach]: → Completed [afterEach]. FAILED: 1 errors and 6 passed (12.687s) Error: Error while running "elementIdSelected" command: First argument passed to .elementIdSelected() should be a web element ID string. Received undefined. See https://nightwatchjs.org/api/elementIdSelected.html at processTicksAndRejections (internal/process/task_queues.js:93:5) ```
Configuration
nightwatch.json
```js const seleniumServer = require("selenium-server"); const chromedriver = require("chromedriver"); const geckodriver = require("geckodriver"); const iedriver = require("iedriver"); const edgedriver = require("edgedriver"); module.exports = { src_folders: ["tests"], output_folder: "reports", custom_assertions_path: "", live_output: false, disable_colors: false, selenium: { start_process: true, server_path: seleniumServer.path, log_path: "", host: "localhost", port: 4444 }, test_settings: { default: { launch_url: "http://localhost:3000/", selenium_port: 4444, selenium_host: "localhost" }, chrome: { desiredCapabilities: { browserName: "chrome", javascriptEnabled: true, acceptSslCerts: true, chromeOptions: { w3c: false } }, selenium: { cli_args: { "webdriver.chrome.driver": chromedriver.path } } }, firefox: { desiredCapabilities: { browserName: "firefox", javascriptEnabled: true, marionette: true }, selenium: { cli_args: { "webdriver.gecko.driver": geckodriver.path } } }, ie: { desiredCapabilities: { browserName: "internet explorer", javascriptEnabled: true, acceptSslCerts: true }, selenium: { cli_args: { "webdriver.ie.driver": iedriver.path } } }, edge: { desiredCapabilities: { browserName: "MicrosoftEdge", javascriptEnabled: true, acceptSslCerts: true }, selenium: { cli_args: { "webdriver.edge.driver": edgedriver.path } } }, safari: { extends: "selenium", desiredCapabilities: { browserName: "safari" }, selenium: { cli_args: { "webdriver.safari.driver": "/usr/bin/safaridriver" } } } } }; ```
Your Environment
nightwatch --version
npm --version
yarn --version
node --version