使用selenium和java无法在ajax覆盖弹出窗口及其显示元素中单击或发送键
我一直在练习自动化web应用程序way2Automation.com的几个场景,并努力在弹出的注册表中输入文本。 我已经做了一些研究,并尝试了以下提到的许多方法: a) 使用WebDriverWait和显式等待 b) 使用隐式等待和Thread.sleep c) 使用JavaScriptExecutor 但是他们都没有为我工作,我仍然坚持注册用户。非常感谢你的帮助。下面是人工制品 网址: 代码试用: (一) 要单击“提交”,您可以使用以下任一选项:使用selenium和java无法在ajax覆盖弹出窗口及其显示元素中单击或发送键,java,selenium,xpath,css-selectors,webdriverwait,Java,Selenium,Xpath,Css Selectors,Webdriverwait,我一直在练习自动化web应用程序way2Automation.com的几个场景,并努力在弹出的注册表中输入文本。 我已经做了一些研究,并尝试了以下提到的许多方法: a) 使用WebDriverWait和显式等待 b) 使用隐式等待和Thread.sleep c) 使用JavaScriptExecutor 但是他们都没有为我工作,我仍然坚持注册用户。非常感谢你的帮助。下面是人工制品 网址: 代码试用: (一) 要单击“提交”,您可以使用以下任一选项: css选择器: driver.findE
:css选择器
driver.findElement(By.cssSelector("input.button[value='Submit']")).click();
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("input.button[value='Submit']"))).click();
:xpath
driver.findElement(By.xpath("//input[@class='button' and @value='Submit']")).click();
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@class='button' and @value='Submit']"))).click();
在需要归纳的元素上单击()
,以使元素可伸缩()
,您可以使用以下任一选项:
:css选择器
driver.findElement(By.cssSelector("input.button[value='Submit']")).click();
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("input.button[value='Submit']"))).click();
:xpath
driver.findElement(By.xpath("//input[@class='button' and @value='Submit']")).click();
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@class='button' and @value='Submit']"))).click();
参考文献 您可以在中找到有关的详细讨论:
parent=driver.getWindowHandle()=child
你仍然需要switchTo()
?@DebanjanB我把基本页面作为父窗口切换到子窗口,即注册页面。