`simulate` - не проходит тестирование, не может выяснить проблему - PullRequest
0 голосов
/ 20 октября 2018

Я провожу простое тестирование, используя jest, все работает нормально, ожидаю одну проблему.Я получаю сообщение об ошибке, так как

expect(wrapper.find("textarea").prop("value")).toEqual("new comment");

fails. не может выяснить проблему.кто-нибудь мне помочь?

вот мой тестовый код:

import React from "react";
import { mount } from "enzyme";
import CommentBox from "components/CommentBox";

let wrapper;

beforeEach(() => {
  wrapper = mount(<CommentBox />);
});

afterEach(() => {
  wrapper.unmount();
});

it("has a text area and button", () => {
  expect(wrapper.find("textarea").length).toEqual(1);
  expect(wrapper.find("button").length).toEqual(1);
});

describe("the text area", () => {
  beforeEach(() => {
    wrapper.find("textarea").simulate("change", {
      target: { value: "new comment" }
    });
    wrapper.update();
  });
  it("has a text area that users can type in ", () => {
    expect(wrapper.find("textarea").prop("value")).toEqual("new comment");
  });

  it("when form is submitted, text area gets emptied", () => {
    wrapper.find("form").simulate("submit");
    wrapper.update();
    expect(wrapper.find("textarea").prop("value")).toEqual("");
  });
});

Live Demo

1 Ответ

0 голосов
/ 20 октября 2018

В вашем компоненте вы сделали опечатку

handleChange = event => {
  this.setState({ comment: event.target.vaue });
};

Это должно быть value, а не vaue

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