【问题标题】:protractor getText() returns empty result量角器 getText() 返回空结果
【发布时间】:2015-08-12 05:15:57
【问题描述】:

我有一些列表通过 ajax 调用填充了行, 在它上面我有一个 itemCount 跨度 - 显示我们有多少行。 表格被行填充后,itemCount 跨度值被更新。 我尝试做的是复制这个 itemCount 值,添加一个新项目 列表,然后测试新的 itemCount 值是否大 1 比旧的。 我认为问题在于,当我从 itemCount 中获取第一个值时 跨度,它仍然是空的。 我尝试添加 browser.waitForAngular(); 等,但值仍然为空:

element(by.id('itemsCount')).getText().then(function(text) {
    console.log('**********' + text);
});

我看到的只是:'**********'

感谢您的帮助!

【问题讨论】:

    标签: protractor gettext


    【解决方案1】:

    您可以尝试像这样使用expected conditions

    var itemsCount    = element(by.id('itemsCount'));
    var blank         = EC.textToBePresentInElementValue(itemsCount, '');
    var itemsNotEmpty = EC.not(blank);
    
    browser.wait(itemsNotEmpty, 5000, "✗ Failed to wait for the item count load").then(function() {
        itemsCount.getText().then(function(text) {
            console.log('**********' + text);
        });
    });
    

    基本上等到 itemsCount 不再为空,然后获取它的文本。

    【讨论】:

      【解决方案2】:

      getText() 和 getAttribute() 之间有一些不同,这取决于它是什么类型的字段。你可以试试getAttribute,看看它是否抓取了文本?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-06-19
        • 2016-02-09
        • 1970-01-01
        • 2013-07-16
        • 1970-01-01
        • 1970-01-01
        • 2019-05-29
        • 1970-01-01
        相关资源
        最近更新 更多