2013-03-31 137 views
2

这个问题似乎已经回答了before,但链接不再存在,因为这个单子群已经不存在了。即使使用我的中等搜索技能,我也无法找到任何有关角度组中跳过测试的参考。在配置/卡玛 - e2e.js我的e2e测试

我的配置文件:

basePath = '../'; 

files = [ 
    JASMINE, JASMINE_ADAPTER, 
    'app/assets/javascripts/v2/vendor/angular.1.0.5.js', 
    'app/assets/javascripts/v2/vendor/angular-*.js', 
    'karma/lib/angular/angular-scenario.js', 
    'karma/lib/angular/angular-mocks.js', 
    'app/assets/javascripts/v2/vendor/*.js', 
    'app/assets/javascripts/v2/services/*.js', 
    'app/assets/javascripts/v2/controllers/*.js', 
    'app/assets/javascripts/v2/*.js', 
    'karma/e2e/*.js' 
]; 

autoWatch = true; 

browsers = ['Chrome']; 

singleRun = true; 

proxies = { 
    '/': 'http://localhost:3000/' 
}; 

junitReporter = { 
    outputFile: 'test_out/e2e.xml', 
    suite: 'e2e' 
}; 

我的应用程序正在担任了上(导轨)端口3000我的测试是尽可能简单。它看起来像这样:

'use strict'; 

describe("A suite", function() { 
    beforeEach(function() { 
    browser().navigateTo('/'); 
    }); 

    it("contains spec with an expectation", function() { 
    expect(true).toBe(true); 
    }); 
}); 

这个测试会被跳过!

[2013-03-30 22:35:28.945] [WARN] config - "/" is proxied, you should probably change urlRoot to avoid conflicts 
INFO [karma]: Karma server started at http://localhost:9876/ 
INFO [launcher]: Starting browser Chrome 
INFO [Chrome 26.0 (Mac)]: Connected on socket id GRDVn96Wxr7xEzxe8XjU 
Chrome 26.0 (Mac): Executed 0 of 1 (skipped 1) SUCCESS (3.771 secs/0 secs) 

即使我使用ddescribe或iit,试图强制运行它,我仍然会被跳过。上一个问题引用的错误是什么?

我正在使用业力0.8.0 &角度情景1.0.5。我能够成功地从angular-seed运行e2e测试,所以我完全不解。任何帮助,将不胜感激。谢谢。

+1

我的搜索fu也失败了。或者它是“tu”? –

回答

5

您应该从JASMINE跑步者转换到ANGULAR_SCENARIO跑步者。

当您运行E2E测试时,测试运行器将连接到您的运行站点并依靠它来服务于正在测试的正确应用程序。它连接的应用程序的各个部分可以通过proxies配置进行控制。你需要提供Karma的唯一其他事情是场景跑步者并测试他们自己。

注意:即使在角种子中也有一个e2e testsunit tests的不同配置。注意在文件数组中的端到端配置的配置:

files = [ 
    ANGULAR_SCENARIO, 
    ANGULAR_SCENARIO_ADAPTER, 
    'test/e2e/**/*.js' 
]; 
+0

谢谢!我删除了JASMINE依赖关系,我认为'karma/lib/angular/angular-scenario.js'等同于* SCENARIO *依赖关系,但我想这是不正确的假设。现在,我遇到了另一个问题。 “expect(true).toBe(true)”回来时会出现“expect undefined toBe true”......奇怪。 –

+4

@flim'expect'预计未来,而不仅仅是一个价值,所以你需要通过一个最终评估为“真实”的未来。我发现这也令人困惑;如果你喜欢,请参阅http://zachsnow.com/#!/blog/2013/expecting-expect-work-expected/。 –

+0

+1正在努力理解这个问题,然后看到你的答案,你救了我的一天:) – exexzian

1

这是现在废弃了的这设置:

... 
frameworks: ["ng-scenario"], 
... 

你还需要通过安装它:

npm install karma-ng-scenario