gpt4 book ai didi

asp.net-mvc - 编码 UI 测试项目未触发 Jquery AJAX 成功

转载 作者:行者123 更新时间:2023-12-03 22:14:16 24 4
gpt4 key购买 nike

我正在尝试在 asp.net MVC4 应用程序上运行编码 UI 测试项目。该应用程序包含涉及的各种ajax 调用。当我手动测试它时,它工作正常,但是当我使用 coded-ui 测试项目测试它时,它会中断,因为在 ajax 调用中,回调函数不会被调用。谁能告诉我我在这里缺少什么?提前致谢。

最佳答案

出了什么问题

Microsoft 的编码 UI 浏览器注入(inject) JavaScript 来填充 XMLHttpRequest 对象以进行跟踪。页面中的任何 ajax 调用都将使用此填充程序而不是真正的 XMLHttpRequest。填充程序假定您的完成回调附加到 XMLHttpRequest 的 onreadystatechange 属性,但 jQuery 2.0 使用新的 onload 和 onerror 事件,因此填充程序永远不会调用回调。

解决方法

解决方法是将以下内容添加到测试项目的 App.config 文件中:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="WebWaitForReadyLevel" value="3"/>
</appSettings>
</configuration>

将 WebWaitForReadyLevel 设置为 3 可阻止编码 UI WebBrowser 注入(inject) javascript 来跟踪 ajax 调用和计时器。 jQuery 将获得真正的 XMLHttpRequest,并且您的 ajax 回调将再次起作用。

关于asp.net-mvc - 编码 UI 测试项目未触发 Jquery AJAX 成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17849074/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com