摩卡测试和 three.js;三未定义

Mocha testing and three.js; THREE is not defined

我正在尝试 运行 对使用 THREE.js 的 Vector3 的代码进行简单的 Mocha 单元测试 class:

import {Vector3} from 'three';
const a = new Vector3(0, 0, 0);

当这是 运行 通过 Mocha(准确地说是 mocha-webpack,其中 webpack 设置为目标 'node',而不是 'web')时,我得到

RUNTIME EXCEPTION  Exception occurred while loading your tests
ReferenceError: THREE is not defined

如您所见,我没有在我的测试代码中引用名称“三”。原来 THREE 是 three.js 的源代码中定义的(全局?)对象。但是,由于某种原因,它现在不可用。我怎样才能让上面的测试代码工作?

发生此错误是因为在 webpack 配置中 "three" 被列在 "externals" 中。从 webpack 的 test-configuration 中删除所有外部组件解决了问题。