77
88``` bash
99npm init -y
10- npm install --save-dev karma karma-jasmine jasmine-core karma-chrome-launcher karma-json-reporter
10+ npm install --save-dev karma karma-jasmine jasmine-core karma-chrome-launcher karma-json-reporter karma-reports-with-file-paths
1111```
1212The instructions are based on:
1313https://karma-runner.github.io/6.4/intro/installation.html
@@ -30,10 +30,14 @@ npx karma init
3030module.exports = function (config) {
3131 config.set({
3232 files: process.env.KARMA_FILES ? JSON.parse(process.env.KARMA_FILES) : [],
33+ preprocessors: {
34+ '**/*.spec.js': ['reports-with-file-paths']
35+ },
3336 ...
3437 plugins: [
3538 ...
36- require('karma-json-reporter')
39+ require('karma-json-reporter'),
40+ require('karma-reports-with-file-paths')
3741 ],
3842 jsonReporter: {
3943 outputFile: require('path').join(__dirname, 'test-results.json'),
@@ -99,7 +103,7 @@ npx karma start --single-run
99103```
100104ng new ng-karma-app --test-runner=karma
101105cd ng-karma-app
102- npm install --save-dev karma karma-chrome-launcher karma-coverage karma-jasmine karma-jasmine-html-reporter jasmine-core karma-json-reporter @types/jasmine
106+ npm install --save-dev karma karma-chrome-launcher karma-coverage karma-jasmine karma-jasmine-html-reporter jasmine-core karma-json-reporter karma-reports-with-file-paths @types/jasmine
103107ng test --no-watch --no-progress --browsers=ChromeHeadless
104108```
105109
@@ -116,10 +120,15 @@ ng generate config karma
116120```
117121module.exports = function (config) {
118122 config.set({
123+ ...
124+ preprocessors: {
125+ '**/*.spec.ts': ['reports-with-file-paths']
126+ },
119127 ...
120128 plugins: [
121129 ...
122- require('karma-json-reporter')
130+ require('karma-json-reporter'),
131+ require('karma-reports-with-file-paths')
123132 ],
124133 jsonReporter: {
125134 outputFile: require('path').join(__dirname, 'test-results.json'),
@@ -143,13 +152,13 @@ ng test --no-watch --no-progress --browsers=ChromeHeadless
143152launchable record tests karma test-results.json
144153```
145154
146- ** Subset tests with ** ng ** :**
155+ ** Subset tests with ng :**
147156```
148157ng test --list-tests | grep src > test_list.txt
149158cat test_list.txt | launchable subset --target 25% karma --with ng > subset.txt
150159```
151160
152161** Run subset of tests**
153162```
154- ng test --no-watch --no-progress --browsers=ChromeHeadless --include $(cat subset.txt)
163+ ng test --no-watch --no-progress --browsers=ChromeHeadless $(cat subset.txt)
155164```
0 commit comments