@rvitalia

Как правильно провести скриншотное тестирование с отключением живого фона?

Написал вот такой код теста:

теста два, второй под айфон, прикреплять не стал, там тоже самое дублируется.

const { test, expect, devices } = require('@playwright/test');

test.describe.configure({ mode: 'parallel', timeout: 150000 });

test('example test 1', async ({ browser }) => {
  
  for (const url of ['https://abrosko-studio.ru/blog/']) {
    const context = await browser.newContext();
    const page = await context.newPage();
    await page.goto(url);
    await page.evaluate(() => {
      const particles = document.querySelector('#particles-js');
      if (particles) {
        particles.style.display = 'none';
      }
    });
    await expect(page).toHaveScreenshot({
      timeout: 100000,
      fullPage: true,
    });
  }
});


Суть проблемы, что тесты не проходят для хрома. firefox и webkit проходят , а хром всегда ругается на evaluate()...

Ошибка следующая: Error: page.evaluate: Execution context was destroyed, most likely because of a navigation..

Это первая проблема, и вторая когда тест на хром проходил до этого, то не применялся код в evaluate...

Т.е. я в этой вставке js кода хочу отключить живой фон, так как скриншотный тест не проходит из-за этого фона..

Или как вообще правильно отключать такие анимации на сайте...такие как живой фон, автопрокрутка слайдеров и т.д...

заранее спасибо за любую помощь.
  • Вопрос задан
  • 96 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы