My React app attaches ‘data-test-id’ markers to components. Puppeteer fails when using a descendant selector ([data-test-id=“TopBar”] [data-test-id=“InnerItem”]) but succeeds with a simple child selector ([data-test-id=“TopBar”] input).
const extractedText = await page.$eval('[data-test-id="TopBar"] [data-test-id="InnerItem"]', el => el.innerText);
const childText = await page.$eval('[data-test-id="TopBar"] input', el => el.innerText);