【问题标题】:Selenium/ Java how to verify the this complex text on pageSelenium/ Java 如何验证页面上的这个复杂文本
【发布时间】:2015-07-19 03:40:19
【问题描述】:

我想使用 selenium /jav 验证页面上是否存在以下文本(HTML 代码)作为 // 字符等

<div class="powatag" data-endpoint="https://api-sb2.powatag.com" data-key="b3JvYmlhbmNvdGVzdDErYXBpOjEyMzQ1Njc4" data-sku="519" data-lang="en_GB" data-type="bag" data-style="bg-act-left" data-colorscheme="light" data-redirect=""></div>

感谢任何对此的帮助

【问题讨论】:

  • 您需要验证哪些文字?
  • 上面提到的一个……HTML代码
  • 为什么?似乎是一个奇怪的测试用例。您可以做的是验证元素的属性。

标签: java html selenium


【解决方案1】:

正如 Andreas 所说,您可能想要验证 div 元素的各个属性。由于您特别提到了“//”,我猜您在使用 data-endpoint 属性时遇到了问题。我假设您的 data-sku 属性会将您带到一个独特的元素,所以尝试这样的事情(未验证):

String endpoint = driver.findElement(
    new By.ByCssSelector("div[data-sku='519']")).getAttribute("data-endpoint");
assertTrue("https://api-sb2.powatag.com", endpoint);

【讨论】:

    【解决方案2】:

    我相信您正在寻找:

    String textToVerify = "some html";
    boolean bFoundText = driver.getPageSource.contains(textToVerify)
    Assert.assertTrue(bFoundText);
    

    注意,这将检查最后加载页面的页面源,如javadoc 中所述。我发现这也需要更长的时间来执行,尤其是在处理大型源代码时。因此,这种方法比验证属性和值更容易失败,而 Breaks Software 的答案是我尽可能使用的方法,仅使用 xpath 选择器

    【讨论】:

      猜你喜欢
      • 2019-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-15
      • 1970-01-01
      • 2013-09-09
      • 1970-01-01
      相关资源
      最近更新 更多