java - 如何使用 Selenium 检查页面上的文本是否突出显示?

标签 java selenium selenium-webdriver selenium-ide

1> 突出显示的文本是什么意思? 假设您浏览任何页面,使用鼠标或其他方式选择该页面上的任何文本。比方说“Hello”,“注册”文本被突出显示。理解有误请指正。

2> 我尝试了下面的代码来获取颜色和背景颜色的 CssValue。 使用给定的代码:

    driver.get("https://facebook.com");
    String textColor = driver.findElement(By.xpath("//*[@id='pageFooter']/div[3]/div/span")).getCssValue("color");
    String bkgColor = driver.findElement(By.xpath("//*[@id='pageFooter']/div[3]/div/span")).getCssValue("background-color");
    System.out.println("TextColor : " + textColor );
    System.out.println("Background Color : " + bkgColor);

输出:-

TextColor : rgba(115, 115, 115, 1)
Background Color : transparent

*TextColor 给出文本的颜色。

** 为了突出显示,我正在使用 Robot 类发送 Ctrl+A ,虽然它选择了整个页面,但它应该输出一些不同的值。在这种情况下,它也仅提供与上述输出相同的文本颜色。

如果我做对了或者我对突出显示的文本的理解是否正确,请告诉我。

最佳答案

你不能单独使用 Selenium 来完成它,但是你可以使用 Selenium 执行 javascript 来完成它。 Js 非常简单:

window.getSelection().toString();

enter image description here

所以只是:

((JavascriptExecutor)driver).executeScript("return window.getSelection().toString();");

PS 不能在 <=IE8 中工作(如果您需要,将提供方法)

关于java - 如何使用 Selenium 检查页面上的文本是否突出显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29475414/

相关文章:

java - onClick Back 按钮重置我的 ListView

python - 如何从我的本地浏览器观看远程服务器上 docker 内的 xvfb session ?

c# - 如果浏览器最小化,Selenium Chrome C# 将无法工作

html - 使用 selenium 和 python 向下滚动 html 表

java - 如何将Json请求中带unicode的值转换成简单字符?

java - 如何使用 Spring Data JpaRepository 在所有列中查找字母

java - 对绘制的对象进行动画处理

java - 如何将selenium中的KeyStroke发送到浏览器窗口(没有定位器)

python - 如何在 Python - Selenium 中将韩语作为 find_element_by_link_text() 的参数?

java - 如何使用xpath获取href值