摩卡测试没有错误,但没有显示绿色箭头

时间:2018-02-19 07:23:30

标签: javascript node.js mocha assert

我有index.js,并且有这样的方法

def main():
    minutes = [15, 45] #Minutes to take action on
    while(True):
        if int(datetime.datetime.now().minute) in minutes:
            #Lots more code

        print("Before sleep")
        time.sleep(59) #Wait 59 seconds before checking action again
        print("After sleep")


if __name__ == '__main__':
    main()

我的测试套件在这里

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) }) }) }); 时,我的终端上没有看到任何错误,没有绿色和红色指示:https://i.stack.imgur.com/Bs2Hp.png

发生了什么?

1 个答案:

答案 0 :(得分:0)

你在for循环中的逻辑是无限的。要运行测试,请使用 npm run 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)
        });
    });
});

<强>输出
enter image description here