4

我试图用摩卡测试框架来测试使用闭包库和angularjs构建的应用程序的karma运行。如何配置karma运行器(也称为testacular)与闭包库

我总是提前namespace.Application is not defined

感谢。

,这里是我的配置文件

basePath = ''; 

files = [ 
    MOCHA, 
    MOCHA_ADAPTER, 
    {pattern: 'vendors/closure-library/closure/goog/base.js', watched: false, included: true, served: true}, 
    {pattern: 'public/javascripts/deps.js', watched: true, included: true, served: true}, 
    {pattern: 'node_modules/expect.js/expect.js', watched: false, included: true, served: true}, 
    {pattern: 'public/javascripts/*.js', watched: true, included: false, served: true}, 
    {pattern: 'tests/*.test.js', watched: true, included: true, served: true} 
]; 
exclude = [ 
]; 
reporters = ['progress']; 
port = 9876; 
runnerPort = 9100; 
colors = true; 
logLevel = LOG_INFO; 
autoWatch = true; 
browsers = ['Chrome', 'Firefox']; 
captureTimeout = 60000; 
singleRun = false; 

,这里是一个简单的测试文件

goog.require('namespace.Application'); 

describe('some sample', function() { 
    it('should do something', function(done){ 
     console.log('asdasd', reAdoptAHydrant); 
     done(); 
    }); 
}); 
+0

我发现我的问题在Chrome中使用开发控制台。在我的应用程序中,我将公用文件夹作为根服务器。要从浏览器访问'/ public/javascripts/whatever.js',我需要'/ javascripts/whatever.js'。所以问题在于汇编deps文件。我需要重新编译它,以便它可以遵循文件“/ public/javscripts/whatever.js”的“新”位置。 – jackdbernier 2013-05-24 14:28:24

回答

2

我发现这个repo在建立谷歌关闭果报TestRunner的一些指点。

+0

我也发现了这个回购,但它使用karma-runner的金丝雀版本,并且好像配置文件中有很多改变。 – jackdbernier 2013-05-24 14:23:18

+2

经过在回购和大量头部抨击后,我已经得到了karma + closure为我工作。我有点新结点,但运行这些命令并更新我的配置在上面的回购示例中帮助:npm install -g karma @ canary,npm install -g karma-phantomjs-browser。然后,我不得不在本地克隆https://github.com/vojtajina/closure-deps-resolver并在根目录下运行npm install -g,因为我无法在npm注册表中找到它。 – 2013-05-31 04:20:12

+2

我想我的配置,如果有帮助:https://gist.github.com/rbarreca/054597e602cf58324e40 – 2013-05-31 04:26:14

相关问题