我正在尝试使用webdriver 2自动发送邮件抛出hotmail
我正在使用WebDriver,java和eclipse。
我很快就通过登录成功进入了hotmail,我收到了主要的邮件页面。
现在我必须单击“新建”按钮(图像编号1),
当我通过命令单击它时:driver.findElement(By.id(“NewMessage”))。click();
它正在工作,页面移动到下一个撰写页面(图像编号2)。
但WebDriver认为他仍然出于某种原因仍然在上一页。
我无法点击此页面上的任何元素。
我的目标是将密钥发送到“收件人”字段,但我无法得到它。
正如你在图像2中看到的那样,我试图通过“InputBox”类获取元素,id,className,xpath等。
如果有人可以帮助我,我会很高兴。
谢谢,
或
答案 0 :(得分:1)
问题是To
字段位于iframe
。在硒中如果你想在一个帧中做任何动作,首先你必须进入框架。
输入框架的代码:
//Assume driver is initialized properly
driver.switchToFrame("Frame Name");
(或)
driver.switchTo.frame("FrameIndexValue");
(或)
WebElement element = driver.findElement(By.id(LocatorValue));
driver.switchTo.frame(element);
//Do any action inside the frame
完成框架内的动作后,你必须离开框架才能在框架外做任何动作。
代码离开框架:
//driver.switchTo.defaultContent();
如果您正在处理iframe
,则defaultContent()会将您带到所有iframe上方的主页面,但如果您处理frame
此方法,则会转到第一个页面的框架。