【问题标题】:when i am try to get text of a binding element, it gives the total text of the div element当我尝试获取绑定元素的文本时,它会给出 div 元素的总文本
【发布时间】:2015-01-12 06:23:50
【问题描述】:
**HTML code :**

<div align="left">
     {{input.visaValidFrom}} // visa valid from value is 2015-01-03
     - 
     {{input.visaValidTo}}   // visa valid to value is 2015-12-01
</div>

量角器代码:

expect(element(by.exactBinding('input.visaValidFrom')).getText()).toBe('2015-01-03');

量角器错误:

Expected '2015-01-03 - 2015-12-01' to be ' 2015-01-03'.

哪位大神帮帮我,怎么解决。

【问题讨论】:

    标签: angularjs google-chrome selenium-webdriver protractor end-to-end


    【解决方案1】:

    element() 这里的调用指的是一个代表单个元素的ElementFinder。换句话说,您得到的是一个包含绑定 (div) 的元素,而不是绑定本身的值。

    在这种情况下,您应该断言完整的元素文本:

    expect(element(by.exactBinding('input.visaValidFrom')).getText()).toBe('2015-01-03 - 2015-12-01');
    

    或者,您可以手动split-的文字:

    element(by.exactBinding('input.visaValidFrom')).getText().then(function (value) {
        expect(value.split(' - ')[0]).toEqual('2015-01-03');
    });
    

    【讨论】:

    • @rajanasekhar 抱歉,我想说这可以正常工作 - 返回一个包含绑定的元素,而不是绑定值本身。
    • 再次感谢@alecxe。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-26
    相关资源
    最近更新 更多