我继续使用Windows XP在IE6上获取此功能
WatiN.Core.Exceptions.RunScriptException : RunScript failed
----> System.UnauthorizedAccessException : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
我将自己的域名添加到可信站点,但问题仍然存在。
Windows 7 64位与IE9
不会发生此错误这是崩溃的地方
browser.Image(Find.ByAlt("Use a password")).Click();
browser.TextField(Find.ByName("_MYPW")).TypeText(privateCurrentPassword); // CRASHES HERE
答案 0 :(得分:2)
之前我遇到过麻烦,因为我在回发之间使用局部变量来存储对元素的引用。
不要这样做
var btn Browser.Button("clientid")
btn.Click(); //assume that this triggers a postback
var result = btn.Text;
这样做
Browser.Button("clientid").Click();
result = Browser.Button("clientid").Text;
答案 1 :(得分:0)
如果您运行的是Windows Vista或更高版本,我相信您需要使用提升的权限运行才能自动执行IE。作为Administrators组的成员是不够的,您需要运行Nunit(或任何您正在使用的)作为管理员。
答案 2 :(得分:0)
在我的情况下,由于在获取对象和尝试使用它之间发生导航而访问不再存在的对象,因此发生异常的原因。例如:
var myElement = otherElement.Element(Find.ByClass("foo"));
ie.Goto("http://www.google.com");
var result = myElement.ClassName; // Exception thrown here