无法通过Robot Framework从textarea获取文本

时间:2019-02-18 19:30:11

标签: textarea robotframework

我试图通过应用程序从文本区域中获取文本(例如abc)。源代码中的标记文本区域不包含abc,尽管它在屏幕上可见,并且我想捕获它。

我尝试使用Robot Framework的Get Text关键字,但返回的值为空。我需要了解我还能使用什么来获取文本区域值。

${ExceptionValue} =  Get Text xpath=//textarea[contains(text(),'abc')]

预期结果为${ExceptionValue}的值不应为空,因为文本区域中有文本。但是返回的值为空。

2 个答案:

答案 0 :(得分:1)

<textarea>中输入的文本实际上存储在其属性value中,它不是文本的一部分。您可以通过键入一些内容,然后通过浏览器中的“检查元素”将其打开来查看-如您所说,您可以在页面中看到键入的文本,但它不在HTML源代码的开始和结束标记之间。

因此,关键字Get Text向您返回了一个空字符串-它适用于这些开始和结束标记之间的内容。要获取实际值(您输入的内容),请获取属性value的值,为此,请使用关键字Get Element Attribute

${my typed text}=   Get Element Attribute    locator_for_the_element    value

答案 1 :(得分:1)

使用Get Value关键字代替。仅当文本在源页面或DOM中可见时,“获取文本”才适用。请尝试以下方法。

${ExceptionValue} = Get Value xpath=//textarea[contains(text(),'abc')]

请告诉我这是否可以解决问题。