gpt4 book ai didi

gruntjs - 尝试运行 Karma 测试运行程序时未定义 JASMINE

转载 作者:行者123 更新时间:2023-12-04 05:38:44 25 4
gpt4 key购买 nike

我正在尝试使用此 seed project 连接 Karma 测试运行器作为模特。

我将种子项目拉入并构建它,并且测试运行器运行良好。

当我编辑 karma.conf.js config 文件开始包含我的项目中的文件,并将其移动到我当前的设置(在种子项目之外),我收到此错误:

Running "karma:dev" (karma) task
ERROR [config]: Error in config file!
[ReferenceError: JASMINE is not defined]
ReferenceError: JASMINE is not defined
at module.exports (C:\dev_AD_2014.01_PHASE1\config\karma-dev.conf.js:4:7)
...

我想我明白它在提示什么......在种子项目中,它的 karma 配置文件是旧格式,必须有 JASMINEJASMINE_ADAPTER在某处定义:

种子项目 karma 配置片段
files = [
JASMINE,
JASMINE_ADAPTER,
'../app/lib/angular/angular.js',
'lib/angular/angular-mocks.js',
'../app/js/*.js',
....
];

exclude = ['karma.conf.js'];
...

我较新的设置使用所有最新的 grunt 插件,并希望将配置文件包装在模块定义中,如下所示:

我的 karma 配置片段
module.exports = function(config) {
config.set({
files: [
JASMINE,
JASMINE_ADAPTER,
// library and vendor files
'../dev/vendor/**/*.js'
'../dev/app/**/*.js'
],

exclude: ['**/*.e2e.js', '../config/*.js'],
reporters: ['progress'],
...

所以问题似乎很明显:一些 grunt 插件的较新版本期望模块化定义,但更长的是设置 JASMINE等,作为定义的变量。这是我的猜测,但我对如何解决这个问题有点迷茫。如果可以的话,我不想使用种子项目附带的 Karma 版本......我认为它是 0.4.4 版本。我相信最新的稳定版本是 0.10.x。

我究竟做错了什么?

谢谢!

最佳答案

如果您想使用最新的稳定 Karma 版本 (0.10.9),您应该在 frameworks 中定义 Jasmine。部分,并确保在 plugins 中有 karma-jasmine部分,在您的 karma 配置文件中。

这是一个示例配置文件:

karma .conf.js

module.exports = function(config){
config.set({
// base path, that will be used to resolve files and exclude
basePath: '',

// list of files / patterns to load in the browser
files: [
{pattern: 'app/**/*.js', watched: true, included: true, served: true}
],

// list of files to exclude
exclude: [

],

preprocessors: {

},

proxies: {

},

// test results reporter to use
// possible values: 'dots', 'progress', 'junit', 'growl', 'coverage'
reporters: ['progress'],

// web server port
port: 9876,

// enable / disable colors in the output (reporters and logs)
colors: true,

// level of logging
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_INFO,

autoWatch: true,

// frameworks to use
frameworks: ['jasmine'],

// Start these browsers, currently available:
// - Chrome
// - ChromeCanary
// - Firefox
// - Opera
// - Safari (only Mac)
// - PhantomJS
// - IE (only Windows)
browsers: [
'Chrome'
],

plugins: [
'karma-chrome-launcher',
'karma-firefox-launcher',
'karma-script-launcher',
'karma-jasmine'
],

// If browser does not capture in given timeout [ms], kill it
captureTimeout: 60000,

// Continuous Integration mode
// if true, it capture browsers, run tests and exit
singleRun: false
});
};

来源: Karma-runner docs

关于gruntjs - 尝试运行 Karma 测试运行程序时未定义 JASMINE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21711437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com