расширение браузера, которое модифицирует страницу вставляет в нее свой html код, я получаю html код проверяемой страницы, но в него не попадает html код-инъекция из расширения, хотя если открывать страницу в браузере то инъекция есть.
т.е. после рендеринга страницы расширение интегрирует внутрь страницы блок:
<div><div class="notification"><div class="notification__close"></div> <div class="notification__logo"></div> <div class="notification__title">
</div> <div class="notification__cta">
Activate
</div></div> <!----></div>
При попытке выловить этот блок, puppeteer его не находит:
let browser = await puppeteer.launch({
headless: false,
ignoreDefaultArgs: true,
args: [
`--load-extension=${path.join(dir, '/extension')},`
]
});
let page = await browser.newPage();
await page.goto('https:/site.url', {waitUntil : 'networkidle2' });
await page.waitForSelector('.notification__cta');
await page.click('.notification__cta');
Получаю отвал по таймауту при попытке найти элемент: : Timeout - Async callback was not invoked within the 30000 ms timeout specified by jest.setTimeout. Timeout - Async callback was not invoked within the 30000 ms timeout specified by jest.setTimeout.Error:
Если посмотреть html который хранится в page, то туда блок notification не попадает... Возможно будут у кого-то идеи как я могу папетиром отследить html-инъекции и манипулировать ими?
так в браузере папитира код из расширения есть или нет?
Обсуждают сегодня