执行javascript时,Watin集成测试失败,出现System.UnauthorizedAccessExcepti

本文关键字:出现 System UnauthorizedAccessExcepti 失败 Watin javascript 执行 集成测试 | 更新日期: 2023-09-27 18:00:13

我们的团队早上开始工作,发现我们的集成服务器上的所有Watin(2.1.0)测试都失败了,但出现了以下异常。测试也不再针对(IE8或IE9)在本地工作

WatiN.Core.Exceptions.RunScriptException : RunScript failed
  ----> System.UnauthorizedAccessException : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))

请注意,当触发列表框jquery更改事件时,会出现此错误消息:

self.$country.bind('change', function (e) {
var country = $('option:selected', this);
if(country.val() == "??")
{                       
    self.$country.val('US');                    
}

我们完全不知所措,因为:

  • 我们已经尝试恢复测试失败前的所有代码更改,但它们的错误似乎没有关联
  • 这些测试已经成功运行了几个月
  • 尚未将任何windows更新应用于服务器
  • 网络权限尚未更改

如能深入了解此错误或提出建议,我们将不胜感激。

执行javascript时,Watin集成测试失败,出现System.UnauthorizedAccessExcepti

对于参考,我们通过将测试站点添加到IE的受信任站点列表来解决此问题,它已经解决了错误消息。类似的问题可在此处参考:stackoverflow.com/questions/3966477/…


我也遇到过很多次这个问题,但在我的案例中,只有当被操纵的元素被禁用时,才会出现这个问题。
即使在DEBUG模式下运行测试时,您也会面临这个问题吗?还是只有在使用测试运行程序将其作为套件的一部分运行时才会面临这个问题。
您可能希望在附加调试器的Visual Studio中运行测试,并检查"快速监视"窗口中正在操作的元素的属性。抛出异常的确切行将在获取此异常的堆栈跟踪中可用。

谨致问候,
Ashish Narmen