Testing 在selenium中选择窗口而不使用标题

Testing 在selenium中选择窗口而不使用标题,testing,selenium,selenium-webdriver,automated-tests,selenium-rc,Testing,Selenium,Selenium Webdriver,Automated Tests,Selenium Rc,对于我的webapp,我需要打开gmail帐户,从邮件中获取随机生成的字符串密码,并将其复制到我的门户上。 问题是我使用gmail帐户登录我的webapp。因此,当我在另一个窗口打开gmail时,它的会话已经启动,收件箱页面直接打开,我无法将焦点转移到这个页面,因为它的标题是动态的,如“收件箱(38)——demo@miniorange.co.in-迷你橙色邮件“取决于待处理邮件 我需要一种方法来选择我的窗口而不使用其标题。此解决方案可用于任何数量的POPU String parentWindow

对于我的webapp,我需要打开gmail帐户,从邮件中获取随机生成的字符串密码,并将其复制到我的门户上。 问题是我使用gmail帐户登录我的webapp。因此,当我在另一个窗口打开gmail时,它的会话已经启动,收件箱页面直接打开,我无法将焦点转移到这个页面,因为它的标题是动态的,如“收件箱(38)——demo@miniorange.co.in-迷你橙色邮件“取决于待处理邮件


我需要一种方法来选择我的窗口而不使用其标题。

此解决方案可用于任何数量的POPU

String parentWindow = driver.getWindowHandle();
Set<String> windowHandles = driver.getWindowHandles();
Iterator<String> iterator = windowHandles.iterator();
while (iterator.hasNext()) {
    String handle = iterator.next();
    if (!handle.contains(parentWindow)) {
        // Switch to popup 
        driver.switchTo().window(handle);
        // Do something          
    }
}
// Switch back to parentWindow
driver.switchTo().window(parentWindow);
String parentWindow=driver.getWindowHandle();
设置windowHandles=driver.getWindowHandles();
迭代器迭代器=windowHandles.Iterator();
while(iterator.hasNext()){
字符串句柄=迭代器.next();
如果(!handle.contains(parentWindow)){
//切换到弹出窗口
driver.switchTo().窗口(手柄);
//做点什么
}
}
//切换回父窗口
driver.switchTo().window(父窗口);

此解决方案适用于任意数量的POPU

String parentWindow = driver.getWindowHandle();
Set<String> windowHandles = driver.getWindowHandles();
Iterator<String> iterator = windowHandles.iterator();
while (iterator.hasNext()) {
    String handle = iterator.next();
    if (!handle.contains(parentWindow)) {
        // Switch to popup 
        driver.switchTo().window(handle);
        // Do something          
    }
}
// Switch back to parentWindow
driver.switchTo().window(parentWindow);
String parentWindow=driver.getWindowHandle();
设置windowHandles=driver.getWindowHandles();
迭代器迭代器=windowHandles.Iterator();
while(iterator.hasNext()){
字符串句柄=迭代器.next();
如果(!handle.contains(parentWindow)){
//切换到弹出窗口
driver.switchTo().窗口(手柄);
//做点什么
}
}
//切换回父窗口
driver.switchTo().window(父窗口);

这已经讨论过很多次了;除非你在电子邮件公司工作,否则不要尝试自动化gmail或任何其他网络浏览器

如果您需要检查已发送的电子邮件、验证内容或提取数据以继续流程,那么使用电子邮件API本身就不稳定,而且要好得多


这已经讨论过很多次了;除非你在电子邮件公司工作,否则不要尝试自动化gmail或任何其他网络浏览器

如果您需要检查已发送的电子邮件、验证内容或提取数据以继续流程,那么使用电子邮件API本身就不稳定,而且要好得多


我对这一点还不熟悉。你能给我一些关于从电子邮件中提取信息的正确而可靠的方法的说明吗?我对这方面有点陌生。你能给我一些关于从电子邮件中提取信息的正确而可靠的方法的说明吗?