【发布时间】:2018-03-08 05:09:14
【问题描述】:
一段时间以来,我一直在使用 Enzyme 来测试我的 React 应用程序中的组件。在几周内第一次更新我的包后,我的测试开始出现错误。
FAIL src/__tests__/title.test.ts
● Testing title component › renders
Enzyme Internal Error: Enzyme expects an adapter to be configured, but found none. [...]
To find out more about this, see http://airbnb.io/enzyme/docs/installation/index.html
我继续按照链接中的说明安装'enzyme-adapter-react-16',并将以下几行添加到我的测试文件中:
import * as enzyme from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';
enzyme.configure({ adapter: new Adapter() });
但是,由于我的应用程序是用 TypeScript 编写的,我现在遇到了两个新问题。
为了澄清图像,第一个错误 TS7016 是 enzyme-adapter-react-16 没有任何类型,第二个错误 TS2339 表示 enzyme 没有属性 configure。
我对 TypeScript 比较陌生,所以我需要一些帮助。我尝试为enzyme-adapter-react-16 安装类型,但这些类型似乎不存在。
我应该尝试自己添加它们,还是有什么方法可以一起避免这个问题?
也很好奇是什么导致了这个错误出现。我以前不需要适配器,为什么现在?
【问题讨论】:
-
这对我来说似乎不是问题。我正在使用
enzyme-adapter-react-16.2和"enzyme": "^3.6.0"。我确实安装了@types/enzyme 3.1.13类型声明文件。
标签: reactjs typescript testing enzyme