【发布时间】:2015-12-02 04:38:41
【问题描述】:
配置:
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jspm', 'jasmine'],
files: [ /*all from jspm*/],
plugins: [
"karma-jspm",
'karma-jasmine',
'karma-chrome-launcher'
],
jspm: {
loadFiles: ['src/*.ts'], // here my tests are located
packages: "jspm/"
},
proxies: {
'/src/': '/base/src/', //to simplify /base url
'/jspm/': '/base/jspm/'
},
reporters: ['progress'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false,
concurrency: Infinity
})
}
例如在“src”目录中,我们有test1.ts 和测试... expect(true).toBe(false) ...
Karma 启动并显示测试失败,OK
然后我修复测试... expect(true).toBe(true) ...
Karma 执行测试(因此它会观察变化),但是……测试仍然失败。 当我在 9876 打开 Chrome 时,我看到它通过 XHR 加载了“test1.ts”和“test1.ts!trsnpiled”(system.js 有效),但它的内容仍然没有改变,响应状态 - 200(不是 304),两者都没有“禁用缓存”或“清理浏览器缓存”都无济于事。
我查看标题:日期已更改 最初是日期:2015 年 12 月 1 日星期二 09:51:26 GMT 然后日期:星期二,2015 年 12 月 1 日 09:53:40 GMT (奇怪但 *.ts 的 mimetype 是 video/mp2v 而不是这个问题)
但内容 - 不是 - 它仍然很旧。
在我使用 typescript-preprocessor 和本机 Karma 模块加载器之前,哪里没有这样的问题,但使用 system.js 加载器时,它发生了,我不知道谁负责。
然后我重新启动业力它测试良好。
【问题讨论】: