Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正在尝试检查是否选中了单选按钮_Java_Selenium_Xpath_Selenium Webdriver - Fatal编程技术网

Java 正在尝试检查是否选中了单选按钮

Java 正在尝试检查是否选中了单选按钮,java,selenium,xpath,selenium-webdriver,Java,Selenium,Xpath,Selenium Webdriver,我试图检查网站上的单选按钮是否被选中,但它总是显示false public static void cBoxRbtnDd () throws Exception{ driverGlobal.get("http://www.makemytrip.com/"); driverGlobal.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); String rdBtn = ".//*[@id='one_way_bu

我试图检查网站上的单选按钮是否被选中,但它总是显示false

public static void cBoxRbtnDd () throws Exception{
    driverGlobal.get("http://www.makemytrip.com/");
    driverGlobal.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);

    String rdBtn = ".//*[@id='one_way_button1']/span";
    boolean att = driverGlobal.findElement(By.xpath(rdBtn)).isSelected();
    System.out.println(att);

    driverGlobal.findElement(By.xpath(rdBtn)).click();

    WebElement radioBtn = driverGlobal.findElement(By.xpath(rdBtn));
    new WebDriverWait(driverGlobal,10).until(ExpectedConditions.visibilityOf(radioBtn));

    boolean att1 = driverGlobal.findElement(By.xpath(rdBtn)).isSelected();
    System.out.println(att1);   
}

单选按钮通常使用属性为
type=“Radio”
创建。如果您注意到站点上的单选按钮,它们实际上是在使用
标记和DOM操作来创建单选按钮

选择单选按钮的效果由CSS完成。请注意,所选单选按钮的类
处于活动状态
。因此,您需要检查类是否包含值
active
,以了解它是否已被选中

您可以使用下面给出的代码段:

public boolean ifActive(WebElement element) {
    String classes = element.getAttribute("class");
    return classes.contains("active");
}
ifActive(driverGlobal.findElement(By.id("one_way_button1")));    //false
ifActive(driverGlobal.findElement(By.id("round_trip_button1"))); //true
ifActive(driverGlobal.findElement(By.id("multi_city_button")));  //false

注释中的值是函数将返回的值。请注意,makemyrtip.com最初默认选择往返单选按钮。

亲爱的Jason Estibeiro谢谢您的回答。我会尽力让你知道的。再次感谢您的时间。@Selenium帮助-太棒了!一定要打绿色的勾。