繁体   English   中英

使用 Selenium Webdriver 的登录弹出窗口

[英]Login Pop-Up Using Selenium Webdriver

如何使用 Selenium Webdriver 4.0 beta 处理登录弹出窗口? 这是我的场景:

  1. 导航到网络应用程序。
  2. Web 应用程序检测到我未登录,并重定向到 SSO 站点
  3. SSO 站点然后检测到我没有登录,并显示一个登录弹出窗口。
  4. 成功登录后重定向回 Web 应用程序。

PS:我已经尝试了之前类似问题中提供的不同解决方案,但似乎没有任何效果对我有用。 下面的代码(我对 Selenium 测试很陌生,因此将不胜感激)。

     public class LoginTest {
     public static void main(String[] args){

         //Setting the driver path
         System.setProperty("webdriver.chrome.driver", "C:\\path");
        
        //Creating WebDriver instance
         WebDriver driver = new ChromeDriver();
         
         //Navigate to web page
         driver.get("https://url");
         
         //Maximising window
         driver.manage().window().maximize();
         
         //Locating web element
         WebElement username = driver.findElement(By.id("email"));
         WebElement password = driver.findElement(By.name("password"));
         WebElement login = driver.findElement(By.name("submit"));
         
         
         //Performing actions on web elements
         username.sendKeys("email");
         password.sendKeys("password");
         login.click();       
         
         //Closing browser session
         driver.quit();
         
         }
}

那么你应该尝试使用explicitWait

public static void main(String[] args) throws InterruptedException {
    WebDriver driver = new ChromeDriver();
    
    //Navigate to web page
    driver.get("https://url");
    
    //Maximising window
    driver.manage().window().maximize();
    
    //Locating web element and performing the action
    new WebDriverWait(driver,10).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("email"))).sendKeys("");
    new WebDriverWait(driver,10).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("password"))).sendKeys("");
    new WebDriverWait(driver, 10).until(ExpectedConditions.elementToBeClickable(By.xpath("submit"))).click();
   
    //Closing browser session
    driver.quit();
    
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM