Ember间歇性验收测试失败,单独运行时通过

时间:2016-02-28 16:47:24

标签: ember.js ember-testing

我希望得到一些关于我为什么会出现间歇性测试失败的线索。当我运行整个模块时,我的验收测试失败,但是当它们单独运行时,所有单独的测试都会通过。这个问题似乎与使用循环断言有关,因为我有两个不同的测试失败,并且都有一个类似于这样的forEach循环:

import Ember from 'ember';
import { module, test } from 'qunit';
import startApp from "dwellconnect-app/tests/helpers/start-app";

var things;

module('Acceptance | something', {
  beforeEach: function() {
    this.application = startApp();
    things = [
      Ember.Object({someProperty: '1'}),
      Ember.Object({someProperty: '2'}),
      Ember.Object({someProperty: '3'}),
      Ember.Object({someProperty: '4'}),
    ]

  },

  afterEach: function() {
    Ember.run(this.application, 'destroy');
  }
});

test('Something', function(assert) {
  assert.expect(4);

  visit('/something');

  andThen(function() {
    // Check that each thing is on the page
    things.forEach(function(thing) {
      var someSelector = 'span:contains("' + thing.someProperty + '")';
      assert.equal(find(someSelector).length, 1, 'Shows each thing');
    });
  });
});

首先,这种方法是否有问题,如果是这样,在数据数组周围构建一组断言的正确方法是什么。如果没有,还有什么可能导致这个问题?即使您只能提供间歇性故障的可能方案,也可能导致我朝着正确的方向前进。现在没有错误,这让我发疯。我不确定福尔摩斯能找到这个。

0 个答案:

没有答案