mocha 测试没报错但是没有显示绿色箭头
mocha test no error but did not show green arrow
我有 index.js 并且有这样的方法
const Calculate = {
exponential(base, power) {
let accumulator = base
for(let iterator = 0; iterator < accumulator; iterator++) {
accumulator *= base;
}
return accumulator
}
}
module.exports = Calculate;
我的测试套件在这里
const assert = require('assert');
const Calculate = require('../index.js')
describe('Calculate', () => {
describe('.exponential', () => {
it('returns the result of a base raised to a power', () => {
const base = 3
const power = 2
const expected = 9
const result = Calculate.exponential(base, power)
assert.equal(result, expected)
})
})
});
当我 运行 npm test
时,我没有看到任何错误,我的终端上没有绿色和红色指示器:https://i.stack.imgur.com/Bs2Hp.png
怎么回事?
你的 for 循环内的逻辑是无限的。 运行 测试使用 npm 运行 test 并相应地修改 package.json。
Package.json
{
"name": "mocha-test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "mocha"
},
"author": "",
"license": "ISC",
"devDependencies": {
"mocha": "^5.0.1"
}
}
index.js
const Calculate = {
exponential(base, power) {
let result=1;
for(let iterator = 0; iterator < power; iterator++) {
result *= base;
}
return result;
}
}
module.exports = Calculate;
test.js
const assert = require('assert');
const Calculate = require('./index.js')
describe('Calculate', () => {
describe('.exponential', () => {
it('returns the result of a base raised to a power', () => {
const base = 3
const power = 2
const expected = 9
const result = Calculate.exponential(base, power)
assert.equal(result, expected)
});
});
});
输出
我有 index.js 并且有这样的方法
const Calculate = {
exponential(base, power) {
let accumulator = base
for(let iterator = 0; iterator < accumulator; iterator++) {
accumulator *= base;
}
return accumulator
}
}
module.exports = Calculate;
我的测试套件在这里
const assert = require('assert');
const Calculate = require('../index.js')
describe('Calculate', () => {
describe('.exponential', () => {
it('returns the result of a base raised to a power', () => {
const base = 3
const power = 2
const expected = 9
const result = Calculate.exponential(base, power)
assert.equal(result, expected)
})
})
});
当我 运行 npm test
时,我没有看到任何错误,我的终端上没有绿色和红色指示器:https://i.stack.imgur.com/Bs2Hp.png
怎么回事?
你的 for 循环内的逻辑是无限的。 运行 测试使用 npm 运行 test 并相应地修改 package.json。
Package.json
{
"name": "mocha-test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "mocha"
},
"author": "",
"license": "ISC",
"devDependencies": {
"mocha": "^5.0.1"
}
}
index.js
const Calculate = {
exponential(base, power) {
let result=1;
for(let iterator = 0; iterator < power; iterator++) {
result *= base;
}
return result;
}
}
module.exports = Calculate;
test.js
const assert = require('assert');
const Calculate = require('./index.js')
describe('Calculate', () => {
describe('.exponential', () => {
it('returns the result of a base raised to a power', () => {
const base = 3
const power = 2
const expected = 9
const result = Calculate.exponential(base, power)
assert.equal(result, expected)
});
});
});
输出