首页 > 解决方案 > 运行测试用例以使用 Jest 测试功能

问题描述

我正在尝试为一个需要两个参数的函数测试几个测试用例。这两个参数以及结果我在三个不同的文件中定义了它,然后将其导出。我正在使用 Jest,但它抛出“TypeError: (0, _index.default) is not a function”错误。有人可以告诉我哪里出错了。在沙箱中测试

测试文件:

import appendToFilter from "./index";
import { res1, res2, res3, res4, res5, res6, res7, res8 } from "./Results";
import { src1, src2, src3, src4, src5, src6, src7, src8 } from "./Source";
import { ip1, ip2, ip3, ip4, ip5, ip6, ip7, ip8 } from "./Input";

test("case1", () => {
  expect(appendToFilter(src1, ip1)).toBe(res1);
});

index.js

export function appendToFilter(filter, inputObjects) {
  // logic here
}

链接:https ://codesandbox.io/s/optimistic-mirzakhani-pogpw-so-b47y8

标签: javascriptjestjsbabel-jest

解决方案


这是因为您没有任何默认导出,并且您正在从索引导入 appendToFilter 而没有命名导入。

采用

import { appendToFilter } from "./index";

代替

import appendToFilter from "./index";

推荐阅读