Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了单元测试 – “元素(选择器,标签).query(fn)”方法如何在Angular E2E测试中起作用?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在为Angular Scenario Runner编写E2E测试时,我遇到了一个query()方法

element(SELEctor,label).query(fn)@H_502_12@ 
 

documentation说:

所以我在html页面上为一组按钮写了一个it-case:

it('should display all buttons on page load',function () {
    var buttontext = ['1','2','3','4','5','6','7','8','9','0'];
    element('button','UI elements').query(function (SELEctedElements,donE) {
        SELEctedElements.each(function (idx,elm) {
            expect(elm.innerText in buttontext).toEqual(true);
        });
        done();
    });
});@H_502_12@ 
 

作为测试执行的结果,我收到了10个带有文本的失败expect-clauses的列表:

中间调试显示buttontext条件下的elm.innerText是真实的.

所以我的问题是,出了什么问题?是不正确的使用done()方法

解决方法

你不能在element().query()函数调用expect().

但是你可以做到以下几点

var promise = element('SELECTOR').query(function(SELEctedElements,donE) {
    // We are in JQuery land.
    if (SELEctedElements < 1) {
      done('ERROR messaGE')
    } else {
      done(null,SELEctedElements[0].innerText)
    }
    // For documentation only.
    // Don't return anything... just conTinue.
    done()
})
expect(promisE).toEqual('i am waiTing for you')@H_502_12@ 
 

您可以将承诺和期望结合到一个电话中.

大佬总结

以上是大佬教程为你收集整理的单元测试 – “元素(选择器,标签).query(fn)”方法如何在Angular E2E测试中起作用?全部内容,希望文章能够帮你解决单元测试 – “元素(选择器,标签).query(fn)”方法如何在Angular E2E测试中起作用?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。