如何在自定义上下文中运行Jest测试?

how to run a jest test in a custom context?

提问人:sim 提问时间:8/10/2023 最后编辑:Yaroslavmsim 更新时间:8/12/2023 访问量:35

问:

目标:我有一组全局变量,我想在不编辑全局空间的情况下在测试中覆盖这些变量。 为此,我想创建一些testContext,调用

Object.defineProperty(**testContext**, "MyGlobalVar", {
        value: myGlobalVarValue,
        writable: false,
    });

然后在此上下文中运行所有操作。喜欢使用it()runInContext()

问题:据我了解,runInContext 需要将在此 testContext 中执行的代码,我想在beforeAll()

我怎样才能告诉 jest 在我创建的自定义 testContext 中运行每个测试?

我试过跑步

beforeAll(() => {
    Object.defineProperty(global, "MyGlobalVar", {
        value: MyGlobalVarValue,
        writable: true,
    });
});

这更糟,但它确实改变了全球空间,我不希望这样

测试 jestjs 全局 变量

评论


答: 暂无答案