使用 Robot 框架和 xpath 检索 HTML-data

Retrieve HTML-data with Robot framework and xpath

首先我访问网站www.google.de。我想从这个 HTML-Code:

中检索单词 Deutschland
<div class="logo-subtext">Deutschland</div>

我必须使用 xpath,因为此 div class 中的 ID 不可用。 在这里您将看到 HTML-源代码 --> 查看源代码:https://www.google.de/?gws_rd=ssl

  1. 如何将网站的HTML加载到机器人变量中?
  2. 如何找到 div-元素并从中获取文本?

到目前为止我的机器人文件的代码片段:

*** Settings ***
Library           Selenium2Library

*** Test Cases ***
xpath-test
    Open Browser    https://www.google.de/    browser=firefox
    ${elem} =    Get WebElement    xpath=//div[text()="Deutschland"]

Selenium2Library 有一个名为 Get Text 的关键字,它将 return 元素内的文本。您需要做的就是为元素提供一个定位器。

如果网页只有一个 div 和 class logo-subtext,您可以使用诸如 xpath=//div[@class='logo-subtext'].

的 xpath

这是一个完整的工作示例,为清楚起见,使用 pipe-separated 格式:

*** Settings ***
| Library | Selenium2Library
| Suite Teardown | Close all browsers

*** Test Cases ***
| xpath-test
| | Open Browser  | https://www.google.de/ | browser=firefox
| | ${logo text}= | get text | xpath=//div[@class='logo-subtext']
| | log | the logo text is ${logo text}
| | should be equal as strings | ${logo text} | Deutschland