小编Enm*_*ran的帖子

如何使用 Jest 测试动态导入(then 和 catch)

所以我一直在努力如何测试动态导入,在这种情况下,特别是在开玩笑,我在互联网上阅读了很多,但没有找到任何具体的东西,所以我考虑提出这个问题以集中一个体面的解决方案.

我在一个类中有以下方法

class MyClass {
   successMethod() {  ...  }

   errorMethod() { ... }

    myMethod() {
        return import('./myFile.js')
           .then(() => this.successMethod())
           .catch(() => this.errorMethod());
    }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是:

您如何使用 Jest 模拟此动态导入的 Success 和 Failing 承诺案例,以确保分别在解决或失败时调用每个方法(successMethoderrorMethod)?

我找到jest.doMock了模拟已解决案例的帮助,但没有找到通过模拟来使动态导入失败的方法,以便catch发现案例。

注意:这不是一个 React 应用程序,这是一个 Vanilla JS 项目。

javascript dynamic-import jestjs

9
推荐指数
1
解决办法
2906
查看次数

标签 统计

dynamic-import ×1

javascript ×1

jestjs ×1