Как протестировать «плагин расширения devtools chrome» с помощью Google Puppeteer?

Я разработал плагин, который является частью инструмента разработчика Google. У него есть собственная панель в инструменте разработчика. Он также перехватывает запросы и имеет некоторый пользовательский интерфейс для пользователей. Я хочу автоматизировать тестирование этого плагина. Есть ли способ заставить Google Puppeteer открывать правильную панель devtools и выполнять действия?


person suresh rathnaraj    schedule 09.05.2018    source источник


Ответы (1)


Вы можете попробовать что-то вроде этого

const browser = await puppeteer.launch({ devtools: true });
const targets = await browser.targets();

// find Devtools target URL
const devtoolsUrl = targets
    .map(({ _targetInfo }) => _targetInfo.url)
    .find((url) => url.indexOf('chrome-devtools://') !== -1);

// load the Devtools page in a new tab
const page = await browser.newPage();
await page.goto(devtoolsUrl);

// click on Network tab
const networkTab = await page.evaluateHandle(`document.querySelector('#-blink-dev-tools > div.widget.vbox.root-view > div > div.widget.vbox.insertion-point-sidebar > div > div').shadowRoot.querySelector('#tab-network');`);
await networkTab.click();

На основе этого ответа . Я пробовал это, все работало хорошо, проверьте это вывод

person Nimish Gupta    schedule 23.12.2018
comment
Это просто обходной путь, потому что он просто загружает статическую панель без данных внутри. Мы не можем взаимодействовать с живой панелью инструментов разработки текущей страницы. - person aviit; 24.12.2018