gpt4 book ai didi

java - 如何使用带有 Java 的 Selenium WebDriver 处理日历弹出窗口?

转载 作者:行者123 更新时间:2023-11-30 08:13:50 24 4
gpt4 key购买 nike

如何使用带有 Java 的 Selenium WebDriver 从这样的日历弹出窗口中选择日期(即从日历中选择 24/04/2015)?

我试过这个:

package com.Automation;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class CalendarPopup {

/**
* @param args
*/
public static void main(String[] args) {
WebDriver driver = new FirefoxDriver();
driver.get("http://www.yatra.com/");
driver.findElement(By.id("//div[2]/ul[3]/li[1]/i")).click();
driver.findElement(By.id("a_2015_4_25")).click();
}
}

最佳答案

您可以通过从其 id 中选择它然后单击它来单击一天

driver.findElement(By.id('a_2015_4_24')).click(); //use this format a_yyyy_m_d

您还可以通过单击日历箭头来后退或前进:

driver.findElement(By.className('js_btnNext')).click() // click the "next" arrow
driver.findElement(By.className('js_btnPrev')).click() // click the "prev" arrow

请注意,您不能点击过去的日子或不可见的日子,而且当您点击这一天时,日历必须是可见的。

编辑:您在代码中选择了错误的元素,因为您是通过将 xpath 传递给函数的 id 选择元素,它应该是这样的:

//....
driver.findElement(By.xpath("//div[2]/ul[3]/li[1]/i")).click();
driver.findElement(By.id('a_2015_4_24')).click();
//...

关于java - 如何使用带有 Java 的 Selenium WebDriver 处理日历弹出窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29789310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com