Selenium читает данные сети, используя HAR Export xpi

Я использую HAR Export XPI, чтобы получить сетевой трафик для страниц, пройденных с помощью селена. Я добавляю XPI к ffv46 (так как не могу добавить XPI в последние браузеры ff). Я использовал упомянутые ниже настройки профиля -

profile.setPreference("app.update.enabled", false);
profile.setPreference("extensions.netmonitor.har.enableAutomation", true);
profile.setPreference("extensions.netmonitor.har.contentAPIToken", "true");
profile.setPreference("extensions.netmonitor.har.autoConnect", true);
profile.setPreference("devtools.netmonitor.enabled", true);
profile.setPreference("devtools.netmonitor.har.pageLoadedTimeout", "50000");
profile.setPreference("devtools.netmonitor.har.defaultLogDir", "FOLDER_ON_SYSTEM");
profile.setPreference("devtools.netmonitor.har.enableAutoExportToFile", false);

И я добавляю следующий javascript, чтобы получить файл HAR.

function triggerExport() {

  var options = {
    token: "true",
    getData: true,
    fileName: "Export_%y%m%d_%H%M%S"
  };
  HAR.triggerExport(options).then(result => {
      console.log(result);
  });
};

if (typeof HAR === 'undefined') 
{
    console.log("Calling Undefined");
    addEventListener('har-api-ready', event => {
        console.log("har api ready");
        console.log(event);
        triggerExport();
    }, false);
} 
else 
{
    console.log("Calling defined");
    triggerExport();
}

Но файл HAR не генерируется. Есть что-то, чего мне не хватает. Кроме того, если я пытаюсь ввести HAR в консоли FF, я получаю сообщение как неопределенное, что приводит к сбою функции.

Есть ли какие-то другие настройки, которые мне не хватает?

Заранее спасибо!!!!

0 ответов

Поскольку мне не удалось решить эту проблему с помощью других предлагаемых решений (AFAIK browsermob proxyи XPI долгое время не обновлялись), я создал небольшой модуль npm для записи тестов на селен в виде файлов HAR - ссылка

Я использовал протокол Chrome Dev Tools для захвата событий Fetch, вы можете увидеть мою логику здесь

Добавляю сюда свою полную запись о том, как преобразовать тесты на селен в тесты API.

Другие вопросы по тегам