使用 Selenium 在页面 onload() 中生成的 JavaScript 警报的解决方法是什么?
我正在使用 Selenium RC (C#) 自动化表单页面。单击“提交”按钮后,我收到一条警报“记录编辑成功!
”。此警报框的标题是“http://www.******.com 的页面显示:
'。
但 Selenium 没有看到此警报。我无法解决这个问题。
这是我尝试过的:
selenium.Click("ctl00_Content_ctl00_btnSubmit");
selenium.WaitForPageToLoad("30000");
结果:我收到以下错误:“Selenium.SeleniumException:30000ms后超时
”
然后我尝试:
selenium.Click("ctl00_Content_ctl00_btnSubmit");
selenium.OpenWindow("", "The page at The page at http://www.******.com says:");
selenium.Close();
selenium.WaitForPageToLoad("30000");
结果:打开了三个窗口(站点、警报和额外窗口) )。没有什么会被关闭。我收到以下错误:“Selenium.SeleniumException:30000ms 后超时
”
然后我尝试:
selenium.Click("ctl00_Content_ctl00_btnSubmit");
selenium.SelectWindow("The page at The page at http://www.******.com says:");
selenium.Close();
selenium.WaitForPageToLoad("30000");
结果:我收到以下错误:“无法找到标题为“页面位于 <”的窗口a href="http://www">http://www.*****.com 说:'
"
有什么建议吗?请帮助克服这个障碍。
I am automating a form page using Selenium RC (C#). After I click 'Submit' button, I get an alert 'Records Edited Successfully!
'. The title of this alert box is 'The page at http://www.******.com says:
'.
But Selenium doesn't see this alert. And I can't work around it.
Here is what I've tried:
selenium.Click("ctl00_Content_ctl00_btnSubmit");
selenium.WaitForPageToLoad("30000");
Result: I get the following error: "Selenium.SeleniumException : Timed out after 30000ms
"
Then I tried:
selenium.Click("ctl00_Content_ctl00_btnSubmit");
selenium.OpenWindow("", "The page at The page at http://www.******.com says:");
selenium.Close();
selenium.WaitForPageToLoad("30000");
Result: Three windows are opened (site, alert and extra window). Nothing gets closed. I get the following error: "Selenium.SeleniumException : Timed out after 30000ms
"
Then I tried:
selenium.Click("ctl00_Content_ctl00_btnSubmit");
selenium.SelectWindow("The page at The page at http://www.******.com says:");
selenium.Close();
selenium.WaitForPageToLoad("30000");
Result: I get the following error: "Could not find window with title 'The page at http://www.******.com says:'
"
Any suggestions? Please help to overcome this obstacle.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
显然,最简单的方法是使用脚本将alert()函数重新定义为不弹出对话框的函数。
Apparently the easiest way to do this is to use script to redefine the alert() function to something that doesn't popup a dialog.
最后我找到了解决方法:
祝大家一切顺利!
Finally I've found a workaround:
Wish you all the best, everyone!