Как получить значение цвета CSS с помощью Xpath?

1

Ниже приведен сценарий, который я пробовал.

  1. Как мы можем идентифицировать элемент с и получить значение цвета CSS с помощью этого XPath?
  2. В чем смысл этого Xpath?

    package mypackage;    
    import org.openqa.selenium.*;
    import org.openqa.selenium.firefox.FirefoxDriver;    
    import org.openqa.selenium.interactions.Action;
    import org.openqa.selenium.interactions.Actions;
    
    public class myclass {
    
            public static void main(String[] args) {
            String baseUrl = "http://newtours.demoaut.com/";
            WebDriver driver = new FirefoxDriver();
    
            driver.get(baseUrl);
            WebElement link_Home = driver.findElement(By.linkText("Home"));
            WebElement td_Home = driver
            .findElement(By
            .xpath("//html/body/div"
            + "/table/tbody/tr/td"
            + "/table/tbody/tr/td"
            + "/table/tbody/tr/td"
            + "/table/tbody/tr"));
    
            Actions builder = new Actions(driver);
            Action mouseOverHome = builder
            .moveToElement(link_Home)
            .build();
    
            String bgColor = td_Home.getCssValue("background-color");
            System.out.println("Before hover: " + bgColor);
            mouseOverHome.perform();
            bgColor = td_Home.getCssValue("background-color");
            System.out.println("After hover: " + bgColor);
            driver.quit();
        }
    }
    
  • 0
    Можете ли вы быть более конкретным, пожалуйста, что именно вы хотите знать? Потому что простой поиск в Google расскажет вам все о xpath.
Теги:
selenium
selenium-webdriver

2 ответа

1

Чтобы получить значение цвета CSS с помощью Xpath, вы можете использовать этот код:

String color = driver.findElement(By.xpath("//xpath")).getCssValue("color");

Он будет возвращать выходной сигнал в формате "RGBA" следующим образом: "rgba (255, 255, 255, 1)".

0

Прежде всего, это, конечно, не эффективный способ писать xpath. Я проверил ваш xpath и он возвращает 9 различных совпадений. Чтобы найти значение цвета css для определенного элемента, ваш xpath или любой другой селектор должны быть очень конкретными. После этого getCssValue и с любым допустимым именем свойства, таким как color, background-color и т. getCssValue, getCssValue значение. Ваш код выглядит отлично, кроме селектора. Кроме того, если вы хотите найти значения css для всех элементов, которые будут перенастроены по xpath вы можете запрограммировать и распечатать значения каждого из них. Изображение 174551

Ещё вопросы

Сообщество Overcoder
Наверх
Меню