.isVisible() Suggest edits
Determine if an element is currently displayed.
The command isVisible()
will automatically wait for the element to be present (until the specified timeout). If the element is not found, an error is thrown which will cause the test to fail. You can suppress element not found errors by specifying the selector
argument as an object and passing the suppressNotFoundErrors = true
option.
Usage
.isVisible(selector, [callback])
.isVisible(using, selector, [callback])
Example
module.exports = {
demoTest(browser) {
browser.isVisible('#main ul li a.first', function(result) {
this.assert.equal(typeof result, "object");
this.assert.equal(result.status, 0);
this.assert.equal(result.value, true);
});
// with explicit locate strategy
browser.isVisible('css selector', '#main ul li a.first');
// with selector object - see https://nightwatchjs.org/guide/writing-tests/finding-interacting-with-dom-elements.html#postdoc-element-properties
browser.isVisible({
selector: '#main ul li a',
index: 1,
suppressNotFoundErrors: true
});
browser.isVisible({
selector: '#main ul li a.first',
timeout: 2000 // overwrite the default timeout (in ms) to check if the element is present
});
},
demoTestAsync: async function(browser) {
const result = await browser.isVisible('#main ul li a.first');
console.log('isVisible result', result);
}
}
Parameters
Name | Type | description |
---|---|---|
using Optional |
string | The locator strategy to use. See W3C Webdriver - locator strategies |
selector |
string | object | The selector (CSS/Xpath) used to locate the element. Can either be a string or an object which specifies element properties. |
callback |
function | Callback function which is called with the result value. |