有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

if块中的java或condition只检查第一个stmt,而不检查第二个stmt

我正在尝试登录,输入用户名和pwd,并在未显示“同意元素”或显示“管理标题元素”时写入条件,然后单击管理元素,但我的代码只是检查未显示“同意元素”,并引发异常

driver.get("entering url");
driver.manage().window().maximize();
       driver.findElement(By.id("BodyContent_MainContent_MainContentPlaceHolder_UserName")).sendKeys(" entering username");
       driver.findElement(By.id("BodyContent_MainContent_MainContentPlaceHolder_Password")).sendKeys("sending pwd");
       driver.findElement(By.id("BodyContent_MainContent_MainContentPlaceHolder_LoginButton")).click();
       if( !driver.findElement(By.xpath("//input[@value='I Agree']")).isDisplayed() || driver.findElement(By.id("admin_header")).isDisplayed()  );
          driver.findElement(By.id("admin_header")).click();
    }

共 (1) 个答案

  1. # 1 楼答案

    使用findElements而不是findElement,并检查返回集合的size()以检查是否存在“我同意”元素