【问题标题】:Run multiple specs using jasmine and jstestdriver使用 jasmine 和 jstestdriver 运行多个规范
【发布时间】:2013-05-20 17:19:42
【问题描述】:

我已经编写了多个规范文件,用于对网页上的各种模块进行单元测试。如果我单独运行它们,一次一个它们工作正常。但是当我尝试按顺序运行所有文件时,只有 spec 文件夹中的第一个文件有效,而所有其他测试都失败了。任何帮助将不胜感激。

每个规范文件都使用 requirejs 加载一个静态页面并将它们呈现在页面上。呈现页面后,我会检查标题、文本等是否正确。规范文件看起来像这样。 AboutSpec.js-->

require(["views/About", "nls/messages"], function (About, messages) {
beforeEach(function(){
    var temp = new About();
    temp.render(); 
});
describe("Test for About Page", function () {

    it("Check For About Title", function () {
        var aboutTitleText = $('.eight.columns h2').text();
        expect(aboutTitleText).toEqual(messages["about_title"]);
    });
});
});

FooterSpec.js-->

require(["views/Footer", "nls/messages"], function (Footer, messages) {
beforeEach(function(){
    var temp = new Footer();
    temp.render(); 
});
describe("Test for Footer Page", function () {

    it("Check For Footer Content", function () {
        var footerText = $('.five.columns h2').text();
        expect(footerText).toEqual(messages["footer_content"]);
    });
});
});

jstestDriver.conf-->

    load:
      - jasmine/lib/jasmine-1.3.1/jasmine.js
      - jasmine/lib/adapter/JasmineAdapter.js
      - js-src/javaScript/require.js
      - js-src/javaScript/default.js

    test:
      - js-test/AboutSpec.js
      - js-test/FooterSpec.js

当我运行此设置时,“关于”页面不会呈现。只有 Footer 页面呈现,因此 about page 的所有测试用例均失败。

【问题讨论】:

  • 这应该可以工作不知道是什么问题,也许你可以尝试js-test/*.js 语法来包含文件夹中的所有文件
  • 我尝试使用 *.js.. 没用

标签: jasmine js-test-driver jasmine-jquery


【解决方案1】:

我们面临着完全相同的问题,而我已经花了——现在有多少小时了?哦,是的,太多了!-- 试图解决这个问题。

今天我发现了Karma,它是来自 Google 的 JsTD 替代品,它在新的 iframe 中运行每个测试。它还与 Jenkins 集成。我现在正在安装它,并将报告它的进展情况。

【讨论】:

  • 你能使用业力吗?
  • 我们要开始了,还没有
  • 天哪,切换到 Karma 需要一个多月的时间......进展如何?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-08
  • 1970-01-01
  • 2011-11-20
  • 1970-01-01
  • 1970-01-01
  • 2012-05-31
相关资源
最近更新 更多