【发布时间】:2023-01-08 00:01:26
【问题描述】:
我需要一些帮助,我想了解这个方法。
我必须对我刚刚在网站上创建的新地址进行断言。
html 看起来像这样
<div class="col-lg-4 col-md-6 col-sm-6">
<article id="address-30338" class="address" data-id-address="30338">
<div class="address-body">
<h4>Piotr</h4>
<address>Piotr Testowy<br>Woronicza<br>10-123<br>Warszawa<br>United Kingdom<br>533243444</address>
</div>
我需要从 br Woronicza 获取文本——比如 addressData
我需要从 br 10-123 获取文本——比如 zipCodeData
ETC...
当我使用
WebElement aliasData = driver.findElement(By.cssSelector("#content > div:nth-child(3) h4"));
assertEquals(别名, aliasData.getText());
它工作正常但形式 br 标签我不知道如何使用 Selenium 和 Java 使它正确。
我不知道正确的 xpath 应该是什么,或者在这个例子中我应该使用其他选择器?
当我尝试使用此代码时 - selenium 报告字符串为空并且不等于 Woronicza。
List<WebElement> elements = driver.findElements(By.xpath("//div[2]//h4/following-sibling::address/br"));
String addressData = elements.get(1).getText();
String zipCodeData = elements.get(2).getAttribute("innerHTML");
String cityData = elements.get(3).getAttribute("innerHTML");
String countryData = elements.get(4).getAttribute("innerHTML");
String phoneData = elements.get(5).getAttribute("innerHTML");
请帮忙!
【问题讨论】: