0

JEST用来测试我的反应应用程序。

我得到错误和一些文本,如下图所示。

在此处输入图像描述

此外,我的测试用例的代码(名为:TodoApp.test.jsx)如下:

it("should add todo ...", () => {
    // const text = "Suzal is trying react";

    // I commented out the other lines because the test
    // only gave error when this line was included.

    const todoApp = TestUtils.renderIntoDocument(<TodoApp />);

    // todoApp.state = {
    //     todos: []
    // }
    // todoApp.handleAddTodo(text);
    // expect(todoApp.state.todos[0].text).toBe(text);
});

如果需要额外的代码/描述,请询问。完整的文件在 Github 上:TodoApp.test.jsx

我已经浏览过的链接

4

1 回答 1

0

我克隆了你的 repo 并开始注释掉,发现在设置初始状态时,构造函数中 TodoApp.jsx 的第 15 行的 TodoApi.getTodos() 似乎发生了一些事情。如果您删除对 TodoApi.getTodos 的调用并用空数组替换,则测试错误将消失。您可能需要为 TodoApi.getTodos 创建一个模拟函数以使您的测试通过。

https://facebook.github.io/jest/docs/en/mock-functions.html

于 2017-12-03T16:42:23.477 回答