我正在用C#编写一些自动化测试,但当我尝试单击一个将提交对web表单所做更改的按钮时,会抛出一个JavaScript错误。我收到的错误是:
An error has occured in the script on this page
Line: 2004
Char: 9
Error: Permission denied
Code: 0
URL: file:///C:/DOCUME~1/nkinney/LOCALS~1/Temp/customProfileDir6c0c7d7226cc463fbb1a7f6253c4df62/core/scripts/selenium-browserbot.js
测试完成后,如果在selenium运行时手动单击该按钮,则仍会显示错误。
selenium中用于选择此按钮的代码行为:
selenium.Click("//input[contains(@id, 'SubmitBtn')]");
我也尝试过提交。
应该会显示一个弹出窗口,要求用户确认他们想要进行更改。在弹出窗口显示之前和Selenium“单击”按钮之后抛出此错误。
任何建议都将不胜感激。
发布于 2010-03-08 17:07:13
经过进一步的研究,我发现Selenium不能处理自定义模式对话框。也就是说,在我们当前的版本中,我不认为我能够使用Selenium来自动化UI测试。感谢所有看过这篇文章的人。
发布于 2011-07-12 23:21:59
我无法与弹出对话框交互。我的测试就这样停止了!
您可以,但仅当对话框是警报或确认对话框时才可以。其他特殊的对话框不能被javascript忽略,因此目前不能与之交互。其中包括“保存文件”、“记住此密码”(Firefox)和模式(IE)对话框。当它们出现时,Selenium只能绝望地拧紧自己的手。
要解决此问题,您可以使用变通方法(如果存在);否则,您可能必须从自动语料库中排除该测试。对于Firefox中的“保存文件”对话框,可以在通过RC运行时指定自定义模板,该模板将始终导致文件下载到指定位置,而不询问用户(请参阅http://forums.openqa.org/thread.jspa?messageID=31350)。选择记住密码后,“记住此密码”对话框不会再次出现。目前,对于IE模式对话框没有太多可做的事情。
您是否可以选择查看测试是否在其他浏览器(Firefox、Chrome)中运行?
这里也有一个非常相似的答案:How do I test modal dialogs with Selenium?
https://stackoverflow.com/questions/2380543
复制相似问题