Jest Styled-компоненты 4.1.1 теста не работают - PullRequest
0 голосов
/ 30 ноября 2018

Недавно я обновил до styled-components до 4.1.1, и большинство тестов компонентов не работает.Я просто создаю немой компонент, чтобы сделать фиктивный тест и посмотреть, зависит ли он от того, как сделаны другие тесты, или это просто текущая версия styled-компонентов.

, предоставляющая этот компонент Button:

import styled from 'styled-components';

const Button = styled.button`
  color: red;
`;
export default Button;

А вот относительный тест:

import React from 'react';
import renderer from 'react-test-renderer';
import 'jest-styled-components';
import Button from './Button';

test('it works', () => {
  const tree = renderer.create(<Button />).toJSON();
  expect(tree).toMatchSnapshot();
});

вывод:

Invariant Violation: Unable to find node on an unmounted component.

Может быть вызван самой последней версией styled-компонентов и некоторыми другими зависимостями?

Я не нашел ничего в официальной документации.

Ответы [ 2 ]

0 голосов
/ 01 мая 2019

У меня не было никаких проблем с использованием рендеринга по реакции на тестирование и стилизованных компонентов.Обходной путь, который я нашел, состоит в том, чтобы использовать другой модуль npm, называемый response-testing-library

, а затем вместо

const tree = renderer.create(<Button />).toJSON();

использовать

const tree = render(<Button />).toJSON();

затем

expect(tree).toMatchSnapshot();

это должно работать!

0 голосов
/ 30 ноября 2018

Обновлены ли все ваши зависимости React и синхронизированы ли они по версии?react, react-dom, react-test-renderer и react-is должны быть в одной версии, в идеале выше 16,4.

...