Еще одно условие не выполняется в Selenium, если еще сценарий - PullRequest
0 голосов
/ 21 сентября 2019

Я попытался выполнить следующий скрипт, но в написанном 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 игнорируется.Пожалуйста, помогите мне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...