1

我正在用 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/customProfileDir6c0c7d7226cc463fb­b1a7f6253c4df62/core/scripts/selenium-browserbot.js 

测试完成后,如果我在 selenium 运行时手动单击按钮,仍然会显示错误。

selenium 中选择此按钮的行是:

selenium.Click("//input[contains(@id, 'SubmitBtn')]"); 

我也试过提交。

应显示一个弹出窗口,要求用户确认他们要进行更改。在显示弹出窗口之前和 Selenium “单击”按钮之后会引发此错误。

任何建议将不胜感激。

4

2 回答 2

0

来自Selenium 常见问题解答

我无法与弹出对话框交互。我的测试停止了!

您可以,但前提是对话框是警报或确认对话框。其他特殊对话框无法被 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?

于 2011-07-12T23:21:58.963 回答
0

经过进一步调查,我发现 Selenium 无法使用自定义模式对话框。也就是说,我认为我无法在当前版本中使用 Selenium 来自动化 UI 测试。感谢所有看过这篇文章的人。

于 2010-03-08T17:07:13.333 回答