量角器:arrayofelements.getText()上的断言返回空列表

时间:2016-01-27 17:25:19

标签: javascript jasmine protractor

下面的断言代码在CI中不起作用(可能由于速度慢)但在我的本地系统中工作得非常好 在CI中,我根本没有得到元素列表,或者只返回实际元素数组中的一个或两个元素

var expectedFromLevels = ['Level 2', 'Level 3', 'Level 4'];
var expectedToLevels= ['Level 3', 'Level 4','Level 5'];
expect(dashboard.getAllFromLevels()).toEqual(expectedFromLevels)
expect(dashboard.getAllToLevels()).toEqual(expectedToLevels)//this has to be called only after getAllFromLevels is assertion is complete

//definition of getAllFromLevels()
    getAllFromLevels : {
        value: function () {
          return element.all(by.css('#from-levels .nlq-sel--level')).getText();
      }
    //definition of getAllToLevels()
    getAllToLevels : {
        value: function() {
          return element.all(by.css('#to-levels .nlq-sel--level')).getText();
          };

**Results::**
In my local system: passed

**In CI:::**
Expected [ 'Level 2', 'Level 3' ] to equal [ 'Level 2', 'Level 3', 'Level 4' ].
Expected [ 'Level 3', '' ] to equal [ 'Level 3', 'Level 4', 'Level 5' ].

1 个答案:

答案 0 :(得分:0)

我通过添加浏览器等待语句在CI中解决了这个问题 - 我知道这不是理想的做法,但这是暂时有效的解决方法 -

make -f makefile-1 -f makefile-2 -qp