作为测试的一部分,我需要检查给定元素的标签和样式。该元素在页面上显示为(粗体,斜体和居中):
<p style="text-align: center;">
<em>
<strong>TEST</strong>
</em>
</p>
我有一些代码来获取/断言'强'标签:
assertEquals ("strong", driver.findElement(By.xpath("//*[text()='TEST']")).getTagName());
如果我添加另一行来断言em标签,它会以强大的方式返回,我不知道如何通过这个
assertEquals ("em", driver.findElement(By.xpath("//*[text()='TEST']/strong")).getTagName();
此外,当我尝试以下方式获取样式属性时,它无法通过em和强标记。 (org.junit.ComparisonFailure:expected:&lt; [text-align:center;]&gt;但是:&lt; []&gt;)。 这适用于仅在p标记中具有文本和对齐的元素
assertEquals ("text-align: center;", driver.findElement(By.xpath("//*[text()='TEST']")).getAttribute("style"));
答案 0 :(得分:0)
findElement会找到fix_json
,因此你会得到[]
<em>TEST<em>
要使“样式”属性在assertEquals ("text-align: center;", driver.findElement(By.xpath("//*[text()='TEST']")).getAttribute("style"));
标记
<p>
要验证单个语句中的所有内容:下面使用的XPath给出了一个P居中的元素,其强调文本带有强标记。如果找到该元素,则验证了您的状况。
driver.findElement(By.xpath("//p")).getAttribute("style");