这是我第一次测试JS前端,我选择了mocha来进行测试。
我有一个类,假设它叫做Market
,它使用我创建的其他类。
我使用import ... from ...
语句和export default Market
最后导出。
所以Market
类看起来像这样:
import { math, AnotherClass, MyOtherClass } from '../index.js'
class Market {
constructor () {
// code here
}
methodToTest(input) {
// some code here ...
return output
}
}
export default Market
然后是我的 test.js 文件。
var assert = require('assert')
// import { Market } from '../public/mm/ai/Market.js'
var Market = require('../public/mm/ai/Market')
describe('Market', function() {
describe('#methodToTest()', function() {
it('should return 0 input is greater than mean + 4 * sigma', function() {
var market = new Market()
assert.equal(market.methodToTest(45), 0)
})
})
})
在运行测试后,我遇到了以下错误:
import { math, AnotherClass, MyOtherClass } from '../index.js'
^^^^^^
SyntaxError: Cannot use import statement outside a module
还有一个错误堆栈。
问题是:如何使用这些导入使mocha测试我的模块?
正如您所看到的,我也尝试在test.js中直接使用import,但它也失败了。
但我不想重写整个项目来使用require
,因为它现在在浏览器中运行得非常好。