use*_*724 7 testing jasmine karma-runner webpack
我正在使用 Karma/Jasmine 来运行许多规范文件。我的测试使用了一些全局函数。一些测试模拟了其他测试所依赖的全局函数。由于测试是异步运行的,因此某些测试会失败,因为其他测试更改了全局函数的预期行为。
有没有办法按顺序运行测试?
小智 7
在 jasmine.json 中将“随机”设置为 false
该文件应添加到 spec/support/jasmine.json
小智 5
我不认为异步测试会同时运行两个测试。这种副作用很可能发生,因为您在单个测试结束后没有重置全局函数。如果您在每次测试后不恢复全局函数,并且运行的下一个测试(可能是套件中的任何单独测试)依赖于相同的函数,则可能会失败。
例如(使用 sinon)
describe("A suite", function() {
beforeEach(function() {
sinon.stub(someGlobal, 'someFunc')
});
afterEach(function() {
someGlobal.sumFunc.restore()
})
it("uses global function", function() {
...
});
});
Run Code Online (Sandbox Code Playgroud)
*但是,您可以在 jasmine 配置中将 random 设置为 false 以按顺序运行您的规范 - https://jasmine.github.io/setup/nodejs.html。
| 归档时间: |
|
| 查看次数: |
8622 次 |
| 最近记录: |