Skip to main content


Get the text content from a DOM-element. Make sure the element you want to request the text from is interactable otherwise you will get an empty string as return value. If the element is disabled or not visible and you still want to receive the text content use getHTML as a workaround.

<div id="elem">
Lorem ipsum <strong>dolor</strong> sit amet,<br />
consetetur sadipscing elitr
<span style="display: none">I am invisible</span>
it('should demonstrate the getText function', async () => {
const elem = await $('#elem');
console.log(await elem.getText());
// outputs the following:
// "Lorem ipsum dolor sit amet,consetetur sadipscing elitr"

const span = await $('span');
console.log(await span.getText());
// outputs "" (empty string) since element is not interactable
it('get content from table cell', async () => {
await browser.url('');
const rows = await $$('#table1 tr');
const columns = await rows[1].$$('td'); // get columns of 2nd row
console.log(await columns[2].getText()); // get text of 3rd column

Welcome! How can I help?

WebdriverIO AI Copilot