我正在使用babel和ng-html2js来构建和测试角度应用程序,并将Karma作为测试运行器。在大多数情况下,事情正在发挥作用。如果我对文件进行更改,Karma将重新运行测试并适当地通过/失败测试。 Karma还确定何时对测试文件本身进行了更改...但是,它将运行旧测试而不是新测试。
举个简单的例子:
/* constant.js */
angular.module("foo").constant("constant", 1);
/* constant.test.js */
let constant;
beforeEach(inject(_constant_ => constant = _constant));
describe("constant", () => {
it("is 1", () => {
expect(constant).to.equal(2);
});
});
在上面的测试中,我正在针对constant
检查2
,但在原始代码中,constant
为1。
constant
中将2
更改为constant.js
,则测试将重新运行并通过。.to.equal(2)
更改为.to.equal(1)
并从头开始重新运行测试,则会通过。.to.equal(2)
更改为.to.equal(1)
,则测试将自动重新运行,但它们将失败,因为它仍然检查1等于2。 当我更改测试文件时,如何让Karma重新运行新测试?