我有两种不同类型的测试:
我想:
ng test
命令中排除.func.spec.ts文件,仅运行 .spec.ts 测试文件因此,我的功能测试不会在常规ng test
上下文中执行,可以单独运行。
换句话说,解决方案可以是......
npm run test
运行.spec.ts文件npm run test:func
运行.func.spec.ts文件我尝试创建一个不同的业力配置文件,排除我不想要的文件,但它不起作用。
你知道如何执行此操作吗?
答案 0 :(得分:0)
您可以做的是添加特定的Karama配置karma.func.conf.js
#!/bin/bash
DATE=20180420
MONTH=`expr ${DATE:4:2}`
# or MONTH=$(expr ${DATE:4:2})
echo MONTH=$MON
添加到您的package.json
module.exports = function (config) {
config.set({
basePath: '',
files: ['src/app/**/**.func.ts'] // Not 100% sure about the pattern
frameworks: ['jasmine', '@angular/cli'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage-istanbul-reporter'),
require('@angular/cli/plugins/karma')
],
client:{
clearContext: false
},
coverageIstanbulReporter: {
reports: [ 'html', 'lcovonly' ],
fixWebpackSourcePaths: true
},
angularCli: {
environment: 'dev' //you could change to use prod
},
reporters: ['progress', 'kjhtml'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false
});
};
也许有另一种解决方案可以避免维护两个配置文件。