Jasmine: "Incomplete: No specs found" in Angular Typescript project
Solution 1
Solved it. Once i moved the .spec files into the /src folder, Jasmine detected them without any problems.
Solution 2
I had this error today, for me it was that I had a syntax-level error in my .ts
files, so they couldn't really compile.
In above situation, I think, the tests should not start (and instead show compile error).
But for whatever reason, somehow the tests start, and Jasmine
fails with "No specs found
" log.
Solution 3
In my case I saw some errors in terminal when I run ng test but when browser open it shown no specs found.
ERROR IN PROJECT
this was the error. After fixed the above error it showed all the specs with the result of executed test cases
Comments
-
lionthefox almost 2 years
For some reason I can't understand, Karma says that Jasmine can't find any of my test specs. I'm using Angular 9, Typescript and
ng test
to run the tests. I also ranjasmine init
to create the jasmine.json config file. I've tried several config changes, creating a dummy test javascript file and more but I'm still getting the same "No specs found" message. This is getting really frustrating and I'm sure I'm just overlooking something obvious here.Tests folder structure:
spec services address.service.spec.ts login.service.spec.ts ... support jasmine.json
jasmine.json:
{ "spec_dir": "spec", "spec_files": [ "**/*[sS]pec.js", // tried with "**/*[sS]pec.ts" "services/*[sS]pec.js" // tried with "services/*[sS]pec.ts" ], "helpers": [ "helpers/**/*.js" // tried with "helpers/**/*.ts" ], "stopSpecOnExpectationFailure": false, "random": false }
karma.conf.js :
// Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function(config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma'), ], client: { clearContext: false, // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join( __dirname, './coverage/censored', ), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true, }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true, }); };
-
Armando Guarino about 2 yearsSame here, basically the tests only run after those errors have been fixed