我对Jasmine和RequireJS完全不熟悉,所以很感谢任何帮助。
我们有以下的目录结构
/assets
/libs <- populated by Jam
/scripts
/tests
我正在尝试设置Jasmine + Grunt + RequireJS来运行我的测试,但是当我运行grunt任务grunt jasmine时,我一直收到以下错误提示。我已经在RequireJS网站上查看了错误信息,但在我看来,一切都已经摆放得妥妥当当。
Error: scripterror: Illegal path or script error: ['scripts/MyModule']
这是我在我的gruntfile.js中设置的Jasmine配置。
jasmine: {
src: 'assets/scripts/**/*.js',
options: {
specs: 'tests/*spec.js',
template: require('grunt-template-jasmine-requirejs'),
templateOptions: {
requireConfig: {
baseUrl: '/assets',
paths: {
'jquery': 'libs/jquery/dist/jquery'
}
}
}
}
这里有一个非常简单的测试规范 :)
require(['scripts/MyModule'], function (myModule) {
'use strict';
describe('A suite', function() {
it('should pass this test', function() {
expect(myModule).not.toBe(null);
});
});
});
RequireJS在我的项目中运行良好,这是我所运行的设置...
<script>
var require =
{
baseUrl: '/assets'
};
</script>
<script src="/assets/libs/require.js"></script>
我哪里做错了,我该怎么修复它?
。
表示当前目录,..
表示上一级目录。如果您以/
开头的路径,它将进入根级别。在客户端方面,这意味着根URL,在服务器端则是文件系统根路径。 - Spoike