【问题标题】:Jest: How to unmock components listed in an index.js file?笑话:如何取消模拟 index.js 文件中列出的组件?
【发布时间】:2016-08-30 18:01:47
【问题描述】:

使用 Jest 对我的反应组件进行单元测试。

我在src/components/index.js 下列出了我的组件,因此我可以执行以下操作:

import { MyComponent } from 'components';

在使用 jest 时,如何在这样的 require 路径上调用 unmock

jest.unmock('components/MyComponent'); // ???

import { MyComponent } from 'components';

// ... tests below ...

上述方法不起作用,尽管这基本上是预期的结果。

【问题讨论】:

  • 尝试使用unmockedModulePathPatterns
  • 是的。没有运气。

标签: javascript testing reactjs ecmascript-6 jestjs


【解决方案1】:

我以前遇到过类似的问题,并且在 jest 12.0.1 中删除了导入解构。

所以而不是;

import { MyComponent } from 'components';

试试;

import index from 'components'
// test code
index.MyComponent

就我个人而言,我通常只是直接包含我想要测试的组件,而不是从索引中引用它。仅当使用未定义将测试放在代码旁边的标准的测试库时,才使用索引似乎值得。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-14
    • 2022-12-22
    相关资源
    最近更新 更多