我正在开发一个由Gulp-Angular自制生成器创建的AngularJS 1.4项目。它已经配置了karma和gulp,这样当我从命令行运行 gulp test 时,karma会运行我所有的* .spec.js文件。我的问题是它总是在整个项目中运行我的所有spec.js文件。我想只运行一个或两个spec.js文件 - 甚至可以更好地指定一个文件夹并让它以递归方式查找所有spec.js文件。
我已经尝试过cd到文件夹,但它仍然可以运行所有测试。
我也尝试在karma.conf.js中编辑这一行: path.join(conf.paths.src,' / ** / * .spec.js'),
和gulp目录中的unit-tests.js文件中的这一行: path.join(conf.paths.src,' / ** /!(*。spec).js')
然而,当我编辑它们时,我仍然可以在整个项目中运行所有测试套件!啊!
必须有办法去做我想做的事情。任何人都可以帮我解决正确的方法吗?
答案 0 :(得分:0)
Karma是测试运动员。 Yeoman的gulp-angular生成器使用Jasmine作为测试者。
搜索文件jasmine.json。
有"spec_dir"
和"spec_files"
部分,如下所示:
"spec_dir": "./",
"spec_files": [
"**/*[sS]pec.js"
],
修改它以满足您的需求。我猜测了一些事情:
"spec_dir": "./some_specific_path",
"spec_files": [
"**/*[sS]pec.js"
],
或者如果你想从根目录逐步进行:
"spec_dir": "./",
"spec_files": [
"some_specific_path_1/**/*[sS]pec.js",
"some_specific_path_2/**/*[sS]pec.js"
],