[AngularJS]中角量角器的错误处理

发布时间: 2017/4/16 21:26:13
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我是新来的量角器自动化 angularJs 应用程序。我试图从元素列表中选择一个元素。我想做错误处理,但什么都如我所料有应许。

在以下代码中,如果我将错误传递无效的类别名称,它永远不会打印它去核查 part(expect) 而失败。

请帮我理解这一点,如何可以解决这个问题。我尝试过使用回调,但不是运气。我也尝试尝试捕捉和仍然没有运气。感谢在这里的任何帮助。谢谢你

this.elements = element.all(by.css('.xyz'));
this.selectCategory = function (categoryName) {
    this.elements.each(function (category) {
        category.getText().then(function (text) {
            if (text === categoryName) {
                log.info("Selecting Category");
                category.click();
            }
        }, function (err) {
            log.error('error finding category ' + err);
            throw err;
        });
    })
};

解决方法 1:

使用 filter() 和检查多少个元素匹配︰

var filteredCategories = this.elements.filter(function (category) {
    return category.getText().then(function (text) {
        return text === categoryName;
    });
});  
expect(filteredCategories.count()).toEqual(1);
filteredCategories.first().click();
赞助商