Я попытался выполнить следующий скрипт, но в написанном if else условие else никогда не выполняется.Я также попытался написать try catch, и я написал, если условие в этом.Все та же проблема.Пожалуйста, помогите мне.Ниже приведен код, который я попробовал.
Только с if else
WebElement menufold=driver.findElement(By.xpath("//*[@class='anticon anticon-menu-fold trigger']"));
WebElement menuunfold=driver.findElement(By.xpath("//*[@class='anticon anticon-menu-unfold trigger']"));
if(menuunfold.isDisplayed()){
//menufold.click();
Thread.sleep(5000);
WebElement e=driver.findElement(By.xpath("//*[@class='anticon anticon-table']"));
Actions a =new Actions(driver);
a.moveToElement(e).build().perform();
Thread.sleep(2000);
List <WebElement> orglist=driver.findElements(By.xpath("//*[@class='ant-menu-submenu-title']"));
a.moveToElement(orglist.get(1)).build().perform();
Thread.sleep(2000);
List <WebElement> profclick=driver.findElements(By.xpath("//a[starts-with(@href,'/profile/')]"));
profclick.get(0).click();
}
else if (menufold.isDisplayed()) {
//menuunfold.click();
Thread.sleep(5000);
driver.findElement(By.xpath("//*[@class='anticon anticon-table']")).click();
Thread.sleep(2000);
List <WebElement> orglist1=driver.findElements(By.xpath("//*[@class='ant-menu-submenu-title']"));
orglist1.get(1).click();
Thread.sleep(2000);
driver.findElement(By.xpath("//a[starts-with(@href,'/profile/')]")).click();
}
Только с try catch
WebElement menufold=driver.findElement(By.xpath("//*[@class='anticon anticon-menu-fold trigger']"));
WebElement menuunfold=driver.findElement(By.xpath("//*[@class='anticon anticon-menu-unfold trigger']"));
try {
if(menuunfold.isDisplayed()){
//menufold.click();
Thread.sleep(5000);
WebElement e=driver.findElement(By.xpath("//*[@class='anticon anticon-table']"));
Actions a =new Actions(driver);
a.moveToElement(e).build().perform();
Thread.sleep(2000);
List <WebElement> orglist=driver.findElements(By.xpath("//*[@class='ant-menu-submenu-title']"));
a.moveToElement(orglist.get(1)).build().perform();
Thread.sleep(2000);
List <WebElement> profclick=driver.findElements(By.xpath("//a[starts-with(@href,'/profile/')]"));
profclick.get(0).click();
}
}catch(Exception e) {
if (menufold.isDisplayed()) {
//menuunfold.click();
Thread.sleep(5000);
driver.findElement(By.xpath("//*[@class='anticon anticon-table']")).click();
Thread.sleep(2000);
List <WebElement> orglist1=driver.findElements(By.xpath("//*[@class='ant-menu-submenu-title']"));
orglist1.get(1).click();
Thread.sleep(2000);
driver.findElement(By.xpath("//a[starts-with(@href,'/profile/')]")).click();
}
То, что я получаю, это исключение при каждом выполнениикод:
org.openqa.selenium.NoSuchElementException: нет такого элемента: невозможно найти элемент: {"method": "xpath", "selector": "// * [@ class ='anticon anticon-menu-unold trigger'] "}
Это означает, что мой блок else игнорируется.Пожалуйста, помогите мне.