当我尝试 运行 mocha 测试时,工作人员未定义

Worker not defined when I try to run mocha test

我想编写测试脚本来检查是否在某个外部文件的函数中创建了 Worker。我要测试的功能是

createPoller: function () {
  var poller = new Worker(POLLER_PATH),
      _this = this;


  /* worker handler on receiving the message */
  poller.onmessage = this.handlePoller.bind(_this);
  this.set('pollerId', U.generateUUID());
  this.set('poller', poller);
}
>>> ReferenceError: Worker is not defined
at new Worker(POLLER_PATH)
      ^

当我 运行 代码时,worker 被创建并且工作正常。但是当我 运行 在该特定代码上编写脚本时,它说 Worker 未定义。

如果您使用的 JavaScript 环境原生支持网络工作者,那么它们应该在那里 供您使用,您的代码应该可以工作。因此,最可能的问题是您实际上 运行 您的代码处于 JavaScript 环境中,该环境本身不支持网络工作者。例如,如果你想在 Node.js 中使用 web worker,你必须添加一个 library that provides it. According to MDN,IE 10 之前的版本不支持 web worker。