c# - 无法在 Visual Studio 中关联测试用例

标签 c# visual-studio unit-testing tfs azure-devops

我在单元测试 C# 项目文件中有一个标准的 MSTest 单元测试。该项目正在运行 .NET Framework 4.7.2,并安装了 1.3.2 版的 MSTest 适配器和框架。我正在运行 Visual Studio 2017 Enterprise 15.7.6,并且有一个 VSTS 工作区,其中包含一些随机手动创建的测试用例。

当我在测试资源管理器中右键单击我的单元测试并选择“关联到测试用例”时,我可以输入测试用例 ID,添加关联,然后单击“保存”。保存后,我收到一条错误消息,如下所示。

Method not found: 'System. Threading. Tasks. Task'l <Microsoft. Team foundation. Worldte mTraclcing.WebAptModels.Worldtem> Microsoft. Teamfoundation.Workltem Tracking.WebApi.Workltem Tra ckingHttpCiientBase.UpdateWorkltemAsync (Microsoft.VisuaiStudio.SeiVices.WebApi.PatchJson.JsonPatchDocu men!, lnt32, System.Nullable'1 <Boolean>, System.Nullable'1 <Boolean >, System.Nullable'1 <Boolean>, System.Object, System.Threadi ng.Cancellation Token)'.

我尝试使用不同版本的 MSTest 和项目文件的不同 .NET Framework 版本来保存关联,但都没有解决问题。我还尝试以管理员身份运行 Visual Studio,但没有用。有没有其他人遇到过这个问题,或者知道任何解决方法?

最佳答案

我在我身边使用两个 VS2017 版本对其进行了测试,它们都运行良好。

例如,我在 VSTS 的一个测试计划中手动添加了一个简单的测试用例,然后我使用 VS2017 15.7.6 在我这边创建了一个带有 .net 4.7.2 的简单单元测试项目,我可以关联到 Test案例在我身边。

如果可能,您可以按照以下步骤在您身边进行测试:

(1) 在其他VS机器上测试(如果你有同一个VS版本但不在同一台机器上)。

(2) 清理VSTS缓存。在解决方案资源管理器窗口中清理并重建您的测试项目,再次测试。

(3) Tools->Options->Work Items,选择“Visual Studio(Compatibility mode)”。

(4) 如果还是不行,在你的VS中添加一个新的测试简单单元测试项目,删除nuget包:MSTest.TestAdapter和MSTest.TestFramework,然后在本地添加对Microsoft.VisualStudio.QualityTools.UnitTestFramework的引用, 再次查看结果。

enter image description here

更新:

我将我的 VS2017 更新到 15.8.1 版本,我遇到了同样的问题,该选项在默认情况下是禁用的。这将是一个真正的反馈。

https://developercommunity.visualstudio.com/content/problem/309413/cannot-associate-test-case-in-visual-studio.html?childToView=311392#comment-311392

有相同问题的其他成员可以投票。

关于c# - 无法在 Visual Studio 中关联测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51793055/

相关文章:

c# - UnityContainer 和内部构造函数

c# - Visual Studio SDK - 处理文件添加、删除和重命名事件

c# - 如何确保文件从我的工作目录复制到 bin/Debug rsp。垃圾桶/释放?

asp.net - Microsoft WebMatrix 和 Visual Studio 有什么区别?

c# - 对装饰器模式进行单元测试

java - 输出为文本墙时的单元测试

c# - 将项目作为第一项添加到字典中 C#

c# - 是否有可能在 DataGridView 中有一列用作允许用户输入新值的组合框?

c# - 使用 WebClient C# 添加请求 header

c++ - 如何使用 Boost 单元测试框架测试 Qt 应用程序