Java 如果';如果';条件是假的
我正在尝试登录一个应用程序,如果“if”条件中的元素不存在,那么它应该执行else部分。现在它不执行else部分。请让我知道我哪里做错了Java 如果';如果';条件是假的,java,selenium,Java,Selenium,我正在尝试登录一个应用程序,如果“if”条件中的元素不存在,那么它应该执行else部分。现在它不执行else部分。请让我知道我哪里做错了 if (driver.findElements(By.xpath("/html/body/div/form/div/div/span")).size() == 1) { if (scount <= 4) Login(); else System.out.println(user); } else {
if (driver.findElements(By.xpath("/html/body/div/form/div/div/span")).size() == 1) {
if (scount <= 4)
Login();
else
System.out.println(user);
} else {
System.out.println("Login Passed");
}
if(driver.findelelements(By.xpath(“/html/body/div/form/div/div/span”).size()=1){
如果(搜索尝试:
if(driver.findelelements(By.xpath(“/html/body/div/form/div/div/span”).size()=1){
if(Scont始终,始终使用大括号。即使它们是可选的。“现在它不执行else部分”有两个:哪一个?这两个else
部分中的哪一个没有执行?您在Login()中写了什么;还有哪些是不执行的?我想你说的是内部if else
。尝试使用大括号我没有否决,但这不是问题的答案。你只是添加了大括号,它不会改变代码执行。但问题是为什么一些代码没有执行。如果问题是“如何使用大括号提高代码的可读性?”,然后答案会很有用。@Würgspaß你说得对,我没有先测试他的代码。无论如何,我认为代码逻辑没有问题,唯一的问题是我不推荐那种xpath。@BOB-我试过你的代码,但它显示了错误。你为什么选择login()在if条件下。为了更好地理解,我附上了login()代码。请检查您是如何知道何时“登录已通过”和何时“登录未通过”的“?这些条件是什么?@BOB-如果此元素/html/body/div/form/div/span存在,则登录失败,如果不存在,则登录通过。因为/html/body/div/form/div/div/span只有在登录失败时才存在此元素。
if (driver.findElements(By.xpath("/html/body/div/form/div/div/span")).size() == 1) {
if (scount <= 4){
Login();
}else{
System.out.println(user);
}
}else{
System.out.println("Login Passed");
}
if (driver.findElements(By.xpath("/html/body/div/form/div/div/span")).size() == 1) {
if (scount <= 4){
if(Login()){
System.out.println("Login Passed");
}else{
System.out.println("The username or password is incorrect !");
}
}else{
System.out.println(user);
}
}else{
System.out.println("Multiple xpath were found !");
}