Tom*_*ech 1 typescript karma-runner webpack karma-webpack
我正在尝试使用karma-webpack来构建我的打字稿测试以用于业力.
最近我的测试已停止运行.在开发人员控制台中,有这样的行,对应于包含我的测试的每个文件:
来自" http:// localhost:9876/base/tests/testFile.ts?[HASH] "的脚本由于不允许的MIME类型而被阻止
像karma这样的脚本标签是由karma生成的:
<script type="text/javascript" src="/base/tests/testFile.ts?[HASH]" crossorigin="anonymous"></script>
Run Code Online (Sandbox Code Playgroud)
(在两种情况下,[HASH]对应于时间戳)
如果我查看与错误消息相关的文件,看起来编译成功 - 每个文件都包含typescript编译器生成的JS,以及所有与webpack相关的东西.
我的业力配置如下:
module.exports = function (config) {
config.set({
plugins: [
require('karma-firefox-launcher'),
require('karma-webpack'),
require('karma-tap')
],
basePath: '',
frameworks: ['tap'],
files: ['tests/**/*.ts'],
preprocessors: {
'tests/**/*.ts': ['webpack']
},
webpack: {
module: {
rules: [
{
test: /\.tsx?$/,
exclude: /node_modules/,
use: [
"babel-loader",
"ts-loader"
]
}
]
},
resolve: {
extensions: [".webpack.js", ".web.js", ".js", ".ts", ".tsx", ".css"]
},
node: {
fs: 'empty'
}
},
reporters: ['progress'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Firefox'],
singleRun: false
});
};
Run Code Online (Sandbox Code Playgroud)
我尝试过使用Chromium而不是Firefox,但是我得到了类似的错误,所以我猜这个问题不是浏览器特有的.
如何防止脚本被阻止并让我的测试再次运行?
包装版本:
"karma": "1.4.1",
"karma-firefox-launcher": "1.0.0",
"karma-tap": "3.1.1",
"karma-webpack": "2.0.2",
"ts-loader": "2.0.0",
"typescript": "2.2.0",
"webpack": "2.2.1",
Run Code Online (Sandbox Code Playgroud)
mime: {
"text/x-typescript": ["ts", "tsx"]
}
Run Code Online (Sandbox Code Playgroud)
现在我的测试再次在Firefox和Chrome中运行.
| 归档时间: |
|
| 查看次数: |
308 次 |
| 最近记录: |