requirejs, coffeescript, jasmine 및 jasmine-sprockets와 함께 karma 0.10.9를 사용하고 있습니다. 왜냐하면 저는 RoR 프로젝트에서 작업 중이기 때문에 스프로킷 지시문 만 포함).요구 사항이있는 JDK 로딩 요구 사항 src 및 lib 파일이 아닌
내가 카르마를 시작하면 "Executed 0 of 0 ERROR"메시지가 표시됩니다.
러너 페이지 (localhost : 9876)에서 보이는 것처럼 lib와 src 파일은로드되지 않지만 스펙은 수행합니다. 콘솔에 오류가 없습니다. lib 또는 src 파일의 URL을 검색 주소창에 직접 복사하면 파일이로드됩니다.
디버그 페이지에서 모든 파일 (libs, 소스 및 테스트)이로드됩니다.
내가 우둔 해요 ...
여기 내 karma.conf.js :
module.exports = function(config) {
config.set({
basePath: '../../..',
frameworks: ['jasmine', 'requirejs'],
files: [
{pattern: 'vendor/assets/javascripts/**/*.js', included: false},
{pattern: 'app/assets/javascripts/v5/**/*.coffee', included: false},
'spec/javascripts/helpers/jasmine-jquery.js',
'spec/javascripts/helpers/maps-helper.js',
{pattern: 'spec/javascripts/fixtures/*.html', watched: true, included: false, served: true},
{pattern: 'spec/javascripts/v5/**/*_spec.coffee', included: false},
'spec/javascripts/v5/test-main.coffee'
],
hostname: [
'localhost'
],
exclude: [
],
preprocessors: {
'**/*.coffee': ['coffee']
},
coffeePreprocessor: {
// transforming the filenames
transformPath: function(path) {
return path.replace(/(.js.coffee|.coffee)/, '.js');
}
},
reporters: ['progress'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: [],
captureTimeout: 20000,
singleRun: false,
reportSlowerThan: 500,
sprocketsPath: 'vendor/assets/javascripts',
sprocketsBundles: [
'bootstrap.js',
'plugins_jquery.js'
],
plugins: [
'karma-jasmine',
'karma-requirejs',
'karma-coffee-preprocessor',
'karma-sprockets'
]
});
};
그리고 test-main.coffee은 :
tests = []
for file of window.__karma__.files
tests.push file if /_spec\.js$/.test(file) if window.__karma__.files.hasOwnProperty(file)
# https://github.com/karma-runner/karma-requirejs/issues/6#issuecomment-23037725
for file of window.__karma__.files
window.__karma__.files[file.replace(/^\//, "")] = window.__karma__.files[file]
requirejs.config
baseUrl: 'base/app/assets/javascripts/'
paths:
jquery: '../../../vendor/assets/javascripts/jquery'
underscore: '../../../vendor/assets/javascripts/lodash'
backbone: '../../../vendor/assets/javascripts/backbone'
// etc.pp.
shim:
backbone:
deps: ['jquery', 'underscore', 'json2']
exports: 'Backbone'
json2:
exports: 'JSON'
deps: tests
callback: window.__karma__.start
어떤 도움에 감사드립니다.
감사합니다.
아마도 내 자신과 같은 문제 일 수 있습니다. http://stackoverflow.com/questions/26656102/requirejs-do-not-add-js-for-modules-using-karma – user1338054