Java Selenium Webdriver:检查页面上的所有字体
对于一个Sprint故事,我需要声明某个字体在不同的页面上不再可用。现在,我可以验证某个元素不包含字体,并且确实被另一个替换,但是有没有办法检查整个页面是否存在某个字体Java Selenium Webdriver:检查页面上的所有字体,java,selenium,webdriver,Java,Selenium,Webdriver,对于一个Sprint故事,我需要声明某个字体在不同的页面上不再可用。现在,我可以验证某个元素不包含字体,并且确实被另一个替换,但是有没有办法检查整个页面是否存在某个字体 我在IntelliJ中使用Selenium Webdriver cucumber/Java。这取决于字体是通过font标记还是CSS指定的字体标记现在已过时,不鼓励使用,但您可以使用下面的代码找到它们,并将整个标记写入控制台 // find FONT tags List<WebElement> fou
我在IntelliJ中使用Selenium Webdriver cucumber/Java。这取决于字体是通过
font
标记还是CSS指定的<代码>字体标记现在已过时,不鼓励使用,但您可以使用下面的代码找到它们,并将整个标记写入控制台
// find FONT tags
List<WebElement> foundFontTags = driver.findElements(By.cssSelector("font[face*='fontname']"));
for (WebElement foundFontTag : foundFontTags)
{
System.out.println(foundFontTag.getAttribute("outerHTML"));
}
如果在外部.css文件中未指定字体,则可以对整个HTML源代码进行文本搜索,搜索“font-face:fontname”
还有一个警告。。。仅仅因为您发现css类的定义包含错误的字体,并不意味着它实际应用于可见元素。那是另一个问题。您可能应该从Sprint团队中获得成功的良好定义。您可以这样使用Selenium:
WebElement.getCssValue("text-align")
但是这对于所有需要验证的CSS来说都有点棘手。这里有一个关于这方面的例子。也许像libs/frameworks这样的CSS单元测试更适合。其他可能的方法(我已经成功地使用过)-视觉回归,它可以支持整个布局演示的验证
WebElement.getCssValue("text-align")