Я сейчас практикуюсь на "homedepot.com", но окно добавления в корзину застревает. То, что я хочу сделать прямо сейчас, это просто нажать кнопку закрытия в этом окне добавления в корзину. Вот мой код:
public static void main(String[] args) {
String path = "C://Webdrivers//geckodriver.exe/";
String url = "http://homedepot.com";
System.setProperty("webdriver.gecko.driver", path);
WebDriver driver = new FirefoxDriver();
driver.get(url);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
if(driver.findElement(By.xpath("//*[@id=\"container\"]/div[1]/div[2]/div/div[2]/div[1]/div/div[1]/a")).isDisplayed() )
{
System.out.println("Logo displayed.");
}
else
{
System.out.println("Logo not displayed.");
}
if(driver.findElement(By.xpath("/html/body/div[1]/div[1]/div[2]/div/div[2]/div[2]")).isDisplayed() )
{
System.out.println("searchbar displayed.");
}
else
{
System.out.println("searchbar not displayed.");
}
if(driver.findElement(By.xpath("//*[@id=\"headerSearchGhost\"]")).isDisplayed() )
{
System.out.println("'What can we help you find today?' displayed.");
}
else
{
System.out.println("'What can we help you find today?' not displayed.");
}
driver.findElement(By.xpath("//*[@id=\"headerSearch\"]")).sendKeys("hammer");
driver.findElement(By.xpath("//*[@id=\"headerSearchButton\"]")).click();
if(driver.findElement(By.xpath("/html/body/div[1]/div[2]/div/div[1]/div[5]/div[2]/div[2]/div[1]/div[1]/div/div/div[1]/div/div[3]/div[1]/a")).isDisplayed() )
{
System.out.println("'Husky 16 oz. Fiberglass Claw Hammer' displayed.");
}
else
{
System.out.println("'Husky 16 oz. Fiberglass Claw Hammer' not displayed.");
}
driver.findElement(By.xpath("/html/body/div[1]/div[2]/div/div[1]/div[5]/div[2]/div[2]/div[1]/div[1]/div/div/div[1]/div/div[4]/div[3]/div/a/span")).click();
// driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
// driver.findElement(By.className("thd-overlay__close")).click();
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.elementToBeClickable(By.className("thd-overlay__close"))).click();
Я тоже раньше занимался автоматизациейparcitce.com, и у меня с этой проблемой была проблема с добавлением в корзину. Мой друг использовал:
// driver.manage (). timeouts (). implicitlyWait (5, TimeUnit.SECONDS);
// driver.findElement (By.className ("thd-overlay__close")). click ();
это работает для нее, так что я не знаю, что случилось с моим?