如何让在安装文件中定义的变量在测试文件中工作?
安装文件:
var lol = 'lol'
试验:
describe("test", () => {
it("test lol", () => {
expect(lol).toBe("lol");
});
});
这并不像预期的那样工作。但是
window.lol = 'lol'
这是可行的。有没有办法让以前的版本工作或自动设置所有的全局变量为窗口的属性?
如何让在安装文件中定义的变量在测试文件中工作?
安装文件:
var lol = 'lol'
试验:
describe("test", () => {
it("test lol", () => {
expect(lol).toBe("lol");
});
});
这并不像预期的那样工作。但是
window.lol = 'lol'
这是可行的。有没有办法让以前的版本工作或自动设置所有的全局变量为窗口的属性?
1条答案
按热度按时间gc0ot86w1#
如果您查看vitetest测试套件:
您将看到一个示例,其中他们使用
test
配置中的setupFiles
专门为global
附加值(特别是使用beforeAll
钩子);注意,每个测试套件使用其自己的上下文,这就是为什么以这种方式进行测试(与通过配置的globalSetup
字段相反)。例如,要添加
lol
:然后:
编辑:看起来您也可以通过Vitest-自定义环境使用
populateGlobal
实用函数:Vitest还提供了populateGlobal实用函数,可用于将属性从对象移动到全局名称空间中: