У меня возникают трудности с извлечением текста из iframe.
С учетом кода:
<iframe id="iframe" src="https://myamazingapp/2637374848489595"
style="width:100%;border:none" height="858px" css="1"></iframe>
<div id="document">
<html lang ="en">
<head>...</head>
<body onLoad="resize();">
<div>class = "app">
<div class = my-response">
<div class="my-response__iconcontainer>..
</div>
<div class="my-response__copy">
<p>Thank you for filling out my form</p>
</div>
</div>
</div>//....other members
Мой фрагмент Кукловода выглядит следующим образом:
const frame = page.frames().find(frame => frame.name() === 'iframe');
await frame.$('body > div > div > div > div.my-response__copy > p');
const text = page.evaluate(el => el.innerHTML, await page.$('body > div > div > div > div.my-response__copy > p'));
expect(text).to.equal('Thank you for filling out my form');
Трассировка стека начинается как:
{ AssertionError: expected {} to equal 'Thank you for filling out my form.'
at changeOptions (/Users/firstname.lastname/Documents/projects/qa-tests/tests/widget/fillform.js:49:25)
at process._tickCallback (internal/process/next_tick.js:68:7)
message:
'expected {} to equal \'Thank you for filling out my form\'',
showDiff: true,
actual: Promise { <pending> },
expected: 'Thank you for filling out my form' }
Любые идеи, как извлечь текст, чтобы я мог утверждать против этого?
Спасибо