在我的程序中,我正在计算两个数字,我想确保它们的减法等于1.
这是代码:
var firstCount=element.all(by.repeater('app in userApps')).count();
var secondCount=element.all(by.repeater('app in userApps')).count();
到目前为止,它很好 - 我得到的数字。接下来的问题是:
var sub=secondCount-firstCount;
expect(sub).toEqual(1);
我收到了这个错误:
Expected NaN to equal 1.
任何想法?
答案 0 :(得分:4)
{strong}承诺 承诺 需要解析:
firstCount
答案 1 :(得分:0)
有可能只解决第一个承诺。量角器调整expect
以“理解”承诺。请参阅https://github.com/angular/protractor/blob/master/docs/control-flow.md#protractor-adaptations和https://github.com/angular/protractor/issues/128。
element.all(by.repeater('app in userApps')).count().then(function (first) {
// Do any changes here...
var second = element.all(by.repeater('app in userApps')).count();
// Here expect() resolves 'second'
expect(second).toEqual(first + 1);
})
});
答案 2 :(得分:0)
你做得非常好。但 在比较之前,检查您的结果值是否为数字类型。
实施例 -
expect(sub).toEqual(jasmine.any(Number));
然后执行预期条件的操作。