同学们!
我正在尝试获取在 chrome 开发人员工具中识别的文本,但是一旦我在 Robot Framework 中运行测试,我就会遇到错误。 使用的代码是:
${name}= Get Text xpath://tr[1]/td[1]/text()
作为解决方法,我这样做了:
${obj_name}= Get Text xpath://tr[1]/td[1]
${obj_name_fd}= Get Text xpath://tr[1]/td[1]/mat-icon
${obj_name}= Replace String ${obj_name} ${obj_name_fd} ${EMPTY}
我确实得到了“xpath://tr[1]/td[1]”,它返回了其中的所有文本: “auto_async_blah_blah_blah”。
Tha 标签“td/”包含带有文本“file_download”的标签“mat-icon/”以及纯文本“auto_async_blah_blah_blah”(没有标签...如[img][ 2]). 所以结果我有:
“file_download auto_async_blah_blah_blah”
然后我得到“xpath://tr[1]/td[1]/mat-icon”并将其替换为 ${EMPTY},以便仅保留“auto_async_blah_blah_blah”。
这个xpath:
//tr[1]/td[1]/text()
会返回一个 TextNode,因为 Selenium 期望返回一个 WebElement。
将您的命令修改为:
${name}= Get Text xpath://tr[1]/td[1]