c# - 编码的 UI 测试生成器无法为记录的操作生成代码

标签 c# internet-explorer visual-studio-2015 coded-ui-tests

我尝试在我的 Visual Studio 2015 Enterprise 中记录在 Windows 10 上运行的 IE 中最简单的编码 UI 操作。问题是最近我开始得到 Value cannot be null。 Parameter name: key 每次点击Add and Generate按钮时出错。

enter image description here

此外,每次我将链接悬停在 IE 网页上时,我都会收到“访问被拒绝”错误。我相信这些问题可能是相关的。

enter image description here

还有一个问题是我无法生成任何断言,因为我无法在网页上选择任何 Web 控件。在我将 Coded UI Test Builder 的十字准线放在文本输入的中间后,整个文档被突出显示。 enter image description here

要解决此问题,我被建议检查项目引用。因此,我包含了任何可能与我能找到的编码 UI 引用相关的内容。这是项目中包含的完整引用列表:

enter image description here

除了我已经尝试过:
1.重启VS
2. 重启电脑
3.以管理员身份运行VS和IE(与Access is Denied问题相关)
4. 为项目添加了新的 UIMap 文件。我试着在那里记录 Action 。
5. 正如其中一条评论中所建议的那样 here我检查了浏览器缩放级别并将其设置为 100%。
6. 使用新的 CodedUI 测试项目开始新的解决方案。
7. 通过在命令行中执行 codedUITestBuilder.exe/standalone,从 Visual Studio 开发人员命令提示符将 Coded UI Test Builder 作为独立应用程序启动。
8. 尝试针对 Windows 资源管理器记录编码的 UI 测试。结果我得到了很多 //Access is denied. 注释行。
9.以安全模式启动VS。测试构建器没有失败,但结果我得到 //The last action was not recorded because access to the application was denied. 并且没有记录实际步骤。
10. 在安全模式下以管理员身份运行 Visual Studio,因此没有外部插件影响 VS。
11. 我重新安装了 Visual Studio。它没有帮助。
12. Enabled tracing for ui components但在录制期间不会生成实际输出。 Testing 选项卡下的 Visual Studio 输出窗口仍然是空的。
13. 检查 CodedUITestBuilder.exe.config。下面的配置被评论了,所以我取消了评论:

 <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
  </startup>

14。正如一条评论中所建议的那样 here我添加了 %ProgramFiles%\Internet Explorer\iexplore.exe 作为 ExcludeProcess 的值之一,然后在 CodedUITestBuilder 中添加了 IncludeProcess 部分。 exe.config。问题是,现在我实际上没有看到Access is Denied 错误,但我仍然无法记录任何步骤或在 html 控件上移动十字准线

网络上的大多数解决方案都是重新安装 Visual Studio,如果没有帮助,请重新安装 Windows。这对我来说是 Not Acceptable 解决方案。 如何在不重新安装 Visual Studio 和/或 Windows 的情况下解决问题?

最佳答案

我尝试了您列表中的所有项目,然后以下命令使其正常工作:

(右键单击):

"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CodedUITestBuilder.exe" 

(检查):

"Properties\Compatability\Change settings for all users\Run the program in compatability mode for:" 

(选择):

"Windows 7"

也可能是这样的:

(检查):

"Properties\Compatability\Change settings for all users\Run this program as an administrator"

我还禁用了 Malware Bytes,但认为这不会影响它。我不确定它是否是这些的组合,但它在“Windows 7 兼容性”之后开始工作。这些是您至少可以添加到列表中的更多项目。

史蒂夫

关于c# - 编码的 UI 测试生成器无法为记录的操作生成代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36645903/

相关文章:

javascript - 禁用asp项目中的右键单击

c# - 如何在 .NET 位图上使用 GDI+ 模糊效果?

visual-studio-2013 - Visual Studio 2015 - 高级保存选项缺少编码类型

visual-studio-2015 - 如何从.NET Core中的appsettings.json配置嵌套对象?

nuget - Visual Studio 2015 Nuget“没有工作文件夹映射”错误

c# - WPF:网格中的 ScrollViewer

javascript - IE 数组中的appendChild 不起作用

ruby-on-rails - 在 response_to block 的 JS 部分返回 HTML 会在 IE 中引发错误

css - 在 IE7 上设置图像高度

c# - SharpZipLib 无法使用 StreamWriter 将文本写入新创建的 csv 文件