Настройте энзим-JSON с Jest - PullRequest
0 голосов
/ 25 марта 2019

Я пытаюсь проверить свои реактивные компоненты с помощью jest и Enzyme.

Когда я импортирую фермент в json в конкретном тестовом случае, это работает.Но вместо того, чтобы делать это вручную, я хотел бы настроить jest для этого.

Я уже пытался добавить "snapshotSerializers": ["энзим-json / serializer"] в мою конфигурацию jest, но это не такпохоже, работает.

Как мне настроить jest на использование энзима-json в моих оболочках?

Этот код работает

Header.test.js

import React from 'react'
import { shallow } from 'enzyme'
import toJSON from 'enzyme-to-json'
import Header from '../../components/Header'

test('Should render Header correctly', () => {
    const wrapper = shallow(<Header />)
    expect(toJSON(wrapper)).toMatchSnapshot()
})

Я хочу, чтобы Jest автоматически использовал энзим-json во всех моих оболочках, чтобы этот код работал также:

Header.test.js

import React from 'react'
import { shallow } from 'enzyme'
import Header from '../../components/Header'

test('Should render Header correctly', () => {
    const wrapper = shallow(<Header />)
    expect(wrapper).toMatchSnapshot()
})

jest.config.json

{
    "setupFiles": [
        "raf/polyfill",
        "<rootDir>/src/tests/setupTests.js",
    ],
    "snapshotSerializers": ["enzyme-to-json/serializer"]
}

Тестовый сценарий

"test": "jest--config = jest.config.json "

ожидается

exports[`Should render Header correctly 1`] = `
<header>
  <h1>
    Title
  </h1>
  <NavLink
    activeClassName="is-active"
    exact={true}
    to="/"
  >
    Home
  </NavLink>
  <NavLink
    activeClassName="is-active"
    to="/create"
  >
    Create
  </NavLink>
</header>
`;

результат

exports[`Should render Header correctly 1`] = `ShallowWrapper {}`;

1 Ответ

0 голосов
/ 26 марта 2019

В моем файле конфигурации Jest было добавлено ",", но консоль не смогла обнаружить ошибку.

jest.config.json

{
    "setupFiles": [
        "raf/polyfill",
        "<rootDir>/src/tests/setupTests.js", <------- this comma
    ],
    "snapshotSerializers": ["enzyme-to-json/serializer"]
}

Удалите запятую, чтобы исправить

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...