Мне удалось настроить проект VueJs с поддержкой машинописи.Файлы ts успешно передаются, и на этом фронте все работает как положено.Я пытаюсь включить модульное тестирование, используя Karma, mocha и chai.
Следуя этому руководству с официального сайта Vue.
Мой karma.config.js
выглядит следующим образом:
var webpackConfig = require('./webpack.config.common.js');
module.exports = function(config) {
config.set({
basePath: ".",
frameworks: [
'mocha',
'chai',
'sinon'
],
files: ['../src/test/**/*.spec.ts'],
preprocessors: {
'**/*.spec.ts': ['webpack', 'sourcemap']
},
webpack: webpackConfig,
reporters: [
'spec'
],
browsers: [
'Firefox'
]
});
};
Запуск теста с karma start ./config/karma.config.js --single-run
приводит к следующему:
clean-webpack-plugin: /home/saurabh/DevEnv/SticyNotes/vuejs-template/dist has been removed.
(node:2343) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
02 02 2019 16:49:12.050:INFO [karma-server]: Karma v4.0.0 server started at http://0.0.0.0:9876/
02 02 2019 16:49:12.076:INFO [launcher]: Launching browsers Firefox with concurrency unlimited
02 02 2019 16:49:12.128:INFO [launcher]: Starting browser Firefox
02 02 2019 16:49:15.522:INFO [Firefox 65.0.0 (Linux 0.0.0)]: Connected on socket 3sTV50Hji3SAvgh8AAAA with id 20821983
02 02 2019 16:49:16.074:WARN [middleware:karma]: Invalid file type, defaulting to js. ts
Firefox 65.0.0 (Linux 0.0.0): Executed 0 of 0 ERROR (0.053 secs / 0 secs)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Кажется, что карма не может определить формат файла ts.Я ожидаю, что он идентифицирует то же, что и в веб-пакете, в качестве препроцессора, в котором ts-загрузчик настроен как загрузчик по умолчанию для машинописного текста.
Также здесь приведена ссылка на весь код: https://gitlab.com/saurabh-harwande-repos/vuejs-template
Редактировать: Index.spec.ts загружается в браузере.Таким образом, тесты вообще не проводятся.Не могу понять почему, хотя конфиг мне кажется правильным.