MochaJS“Window Is Undefined”

3
在MochaJS中,当我导入我的JS文件进行测试时,我一直收到这个错误:
ReferenceError: window is not defined

我的js文件采用以下模式编写,我认为这是定义窗口级变量的最佳实践:
if (typeof window.myVar === 'undefined') {
  window.myVar = ...
}

根据 如何正确检查全局变量是否存在?
无论如何,在 js 文件中的任何时候都应该能够引用“window”而不会破坏单元测试。
我不想模拟访问 URL(就像 ZombieJS 教程所假设的那样),也不能让 ZombieJS 或 PhantomJS 创建 window 对象的模拟。
插入:
var window = {};

我的单元测试没有效果。

其他相关的帖子,比如在Mocha中定义测试窗口,对我来说完全没有意义。

人们是如何处理这个问题的?

1个回答

2

我明白了!

基本上,它涉及将根对象作为“this”传递给正在进行单元测试的函数。

我写了一篇更加全面的博客文章来介绍它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接