【发布时间】:2019-04-24 17:37:15
【问题描述】:
我正在 C# 和 .NET 4.5 以及 SpecFlow + NUnit 中创建自动化测试
我的 ASP.NET MVC 应用程序具有 Kendo MVC 控件。在其中一个页面上,我们创建了一个 JavaScript 变量来指示所有客户端 Kendo 字段都已加载。
从我的一个 NUnit 测试中,C# 代码使用以下脚本读取客户端变量的值:
public override void EnsurePageReady()
{
do
{
try
{
var fieldsLoaded = WebDriver.ExecuteJavaScript<bool>("return kendoFieldsLoaded;");
if (fieldsLoaded)
{
break;
}
}
catch (WebDriverException)
{
}
Thread.Sleep(200);
} while (true);
}
ExecuteJavaScript() 在所有三种主要浏览器(Chrome、Firefox、IE11)中都可以在本地正常工作。但是,我在使用 Windows Server 2012 R2 和 IE11 在 Windows 10 上的构建服务器上得到 UnexpectedJavaScriptError)。
我已经尝试了 Internet 上的所有建议,包括更改注册表、启用保护模式等,但没有运气。
我碰壁了,如果我能得到解决此问题的任何帮助或指示,我将不胜感激。
谢谢!
【问题讨论】:
-
更正:在本地 IE11 上工作,而不是在 Win 2012 R2 的 Build 服务器上工作
-
我知道这很模糊,但它似乎是目标机器上的安全设置。您的增强安全设置是什么?
-
您是否仍然收到
return true;而不是return kendoFieldsLoaded;的错误? -
嗨萌 - 那个设置在哪里?
-
嗨 Florent - 是的,结果相同。关于 Windows 2012 R2 + IE11,在 Windows 10 + IE11 上运行良好
标签: selenium internet-explorer-11 windows-server-2012-r2