如何在jest setupFiles中访问“期望”

时间:2019-09-25 17:45:06

标签: javascript jestjs

我想在Jest中创建一个custom matcher。我希望这应该放在我的jest.config.js文件中指定的jest-setup.js文件中。

jest-setup.js

// ...

expect.extend({
    myCustomMatcher(received, val) {
        // ...
    }
});

不幸的是,尽管jest在执行中是一个全局变量,但看来expect不是。我可以将扩展名放入帮助程序文件中,并为使用该扩展名的任何测试套件导入该文件,但这似乎是错误的解决方案。

是否有一种方法可以通过expect变量访问jest(或其他方式)?

1 个答案:

答案 0 :(得分:1)

您可以使用setupFilesAfterEnv来做到这一点。来自the docs(重点是我):

  

setupFilesAfterEnv [array]

     

在每次测试之前运行一些代码以配置或设置测试框架的模块的路径列表。由于setupFiles是在环境中安装测试框架之前执行的,因此此脚本文件为您提供了在环境中安装了测试框架之后立即运行一些代码的机会。