Приложение чередует светлый и темный режим между тестами Cypress - PullRequest
1 голос
/ 30 января 2020

У меня есть приложение React, которое использует useDarkMode hook. Он отлично работает в живом приложении, но при выполнении моих тестов Cypress E2E приложение переключается между каждым тестом между светлым и темным режимом (каждый второй блок it находится в светлом режиме), даже если я cy.clearLocalStorage() после каждого теста. Моя ОС настроена на темный режим, поэтому я ожидаю, что все тесты будут работать в темном режиме по умолчанию.

Мои тесты настроены следующим образом:

describe('Application', () => {
  beforeEach(() => {
    cy.visit('/');
  });

  it('does something', () => {
    // this will run in dark mode
  });

  it('does something else', () => {
    // this will run in light mode
  });})

  it('does another thing', () => {
    // back to dark mode
  });
});

Я заметил, что тесты, которые запускаются в светлом режиме, устанавливают переменную darkMode localStorage равной null, тогда как тесты, которые запускаются в темном режиме, устанавливают ее на true. Может ли это быть ошибкой в ​​способе сохранения Cypress localStorage? Или может быть ошибка в useDarkMode хуке?

...