无法在 Jest 中创建自定义测试环境

2024-01-22

我正在尝试使用 Jest 创建一个自定义测试环境,如其官方所述docs https://jestjs.io/docs/en/configuration#testenvironment-string
不幸的是我收到以下错误:

确定要运行的测试套件...
验收测试/mongo.test.js 失败
● 测试套件运行失败

类型错误:TestEnvironment 不是构造函数

at ../node_modules/jest-runner/build/run_test.js:88:25

我的测试完全是空的,我的 CustomTestEnvironment 仅调用超类。我使用的是最新的 Jest 版本 (24.3.1)

我认为这很奇怪,错误是在 Jest 库中抛出的。

这是我的测试环境.js:

const NodeEnvironment = require('jest-environment-node');

class CustomEnvironment extends NodeEnvironment {
  constructor(config) {
    super(config);
  }

  async setup() {
    await super.setup();
  }

  async teardown() {
    await super.teardown();
  }

  runScript(script) {
    return super.runScript(script);
  }
}

任何帮助表示赞赏!


好吧,这是一个愚蠢的问题,我找到了解决方案。

我必须导出CustomEnvironment

const NodeEnvironment = require('jest-environment-node');

class CustomEnvironment extends NodeEnvironment {
  ...
}

module.exports = CustomEnvironment

并将其添加到 jest.config.js 中

const { defaults } = require("jest-config");
module.exports = {
  testEnvironment: './../CustomEnvironment.js',
};

我不知道为什么该指南不包含该行:(

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法在 Jest 中创建自定义测试环境 的相关文章

随机推荐