не удалось проверить контейнер, хотя установка для фермента успешно - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть этот контейнер

import React from "react";

class App extends React.Component {
  render() {
    return (
      <div className="App">
        <input type="text" onChange={this.changeInput} />
        <button onClick={this.addItem}>Add</button>
      </div>
    );
  }
}

export default App;

Почему я не могу использовать shallow на нем?Мой тест выглядит так

import App from "./index";

describe("App", function() {
  it("should render", function() {
    const wrapper = shallow(<App />);
    //expect(wrapper).toBe(1);
  });
});

Ошибка говорит Enzyme expects an adapter to be configured, but found none., но я считал, что правильно настроил фермент.Я хочу проверить, есть ли в приложении ввод и кнопка, но я застрял там ..

demo https://codesandbox.io/s/21rz901mp0

Ответы [ 2 ]

0 голосов
/ 18 декабря 2018

Создайте один файл энзимов.js и добавьте следующий код ... И импортируйте его в файл тестового теста

import Enzyme, { configure, shallow, mount, render } from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';

configure({ adapter: new Adapter() });
export { shallow, mount, render };
export default Enzyme;
0 голосов
/ 11 декабря 2018

Просто установите этот пакет enzyme-adapter-react-16, и в ваших тестах добавьте эти две строки:

import * as Adapter from 'enzyme-adapter-react-16';
enzyme.configure({ adapter: new Adapter() });
...