我搜索过高低,找不到该异常的答案。 This question是我搜索时遇到的主要问题,但没有解决此问题。
[7/8/2018 6:22:22 PM Informational] Executing test method 'CoreScraper.FlyerScraper.GetAllCurrentFlyers'
[7/8/2018 6:22:22 PM Error] System.InvalidOperationException: The following TestContainer was not found 'C:\Users\Username\Documents\Visual Studio 2017\Projects\ProductApp\CoreScraper\bin\Debug\netcoreapp2.0\CoreScraper.dll'
at Microsoft.VisualStudio.TestWindow.Controller.TestContainerProvider.<GetTestContainerAsync>d__61.MoveNext()
“ CoreScraper”是项目的名称。当我查看该...\netcoreapp2.0\
文件夹时,CoreScraper.dll肯定在其中。我通过右键单击测试方法并选择“运行测试”来运行测试。我第一次运行该测试时就运行良好,但是此后一直给我带来这个错误。我已经退出Visual Studio,然后重新打开,删除了bin\
的内容,清理并重建了项目,等等。
答案 0 :(得分:9)
问题是未安装NuGet软件包Microsoft.NET.Test.Sdk
。通过NuGet软件包管理器在项目中安装此软件包即可解决问题。
这对我来说并不直观,因为我有另一个单元测试项目,该项目可以在没有Microsoft.NET.Test.Sdk
软件包的情况下正常运行,但是该项目是.NET Framework 4.6.2。
答案 1 :(得分:5)
对我有用的东西
删除.vs
文件夹中的文件夹。
答案 2 :(得分:3)
今天,我遇到了针对xUnit测试的Visual Studio 2017类似问题。 我的观察:
注意 经过一番Google / Bing之后,我发现每个人都通过安装一些软件包获得了解决方案。但是就我而言,一切之前都在工作,因此决定不安装其他任何东西。
希望有帮助。
答案 3 :(得分:3)
我正在运行VS2019版本16.7.2。 我通过删除隐藏的TestStore文件夹(“ .vs [解决方案名称] \ v16 \ TestStore”)解决了我的问题。似乎在切换分支时,另一个分支中存在的单元测试项目已缓存在该TestStore文件夹中。
答案 4 :(得分:2)
正如@ Marathon55所说,安装Microsoft.NET.Test.Sdk
解决了这个问题,但就我而言,我必须再安装2个软件包MSTest.TestFramework
和MSTest.TestAdapter
。可能会帮助某人
答案 5 :(得分:1)
这就是我的情况。
.vs
文件夹最终将删除旧项目的所有引用。现在,“测试资源管理器”显示了预期的测试数量。答案 6 :(得分:1)
当我将新测试项目添加为“类库”项目而不是“单元测试项目”时,我遇到了这个问题。它找到了我的测试,但无法运行它们。
通过删除类库项目并从新的单元测试项目重新开始修复它。
答案 7 :(得分:0)
我遇到了这个问题。我尝试过在此问题中发布的所有答案。在我的情况下,出了问题-有人错误地修改了app.config
文件。结果,该文件在其中获得了一个新的配置部分,但未定义此部分。
缺少<configSections></configSections>
拥有<someConfigSection . . . . />
我只是修复了app.config
并开始进行测试。
This is the source of the original suggestion认为app.config
可能是此问题的罪魁祸首
答案 8 :(得分:0)
对我来说,当我从发布模式切换回调试模式时,问题解决了。
(使用VS2019时)
答案 9 :(得分:0)
我不知道这对任何人都没有帮助,但是我在尝试以.net Standard为目标的Specflow项目时遇到了此问题。最后,解决此问题的唯一方法是将.net Core作为目标。
答案 10 :(得分:0)
我正在使用.NET Framework v4.6.1,而不是.NET Core,但我也遇到了与此完全相同的错误。我按照上面的家伙/女孩提供的步骤进行了组合。
...然后就可以了。希望这对某人有帮助!
答案 11 :(得分:0)
.NET Core项目遇到相同的问题。解决方法如下:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>my_project_unittest</RootNamespace>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0">
<PackageReference Include="MSTest.TestAdapter" Version="2.1.0" />
<PackageReference Include="MSTest.TestFramework" Version="2.1.0" />
<PackageReference Include="coverlet.collector" Version="1.2.0" />
</ItemGroup>
</Project>
答案 12 :(得分:0)
就我而言,我搞砸了测试项目,并决定从以下位置更改配置:
<Project Sdk="Microsoft.NET.Sdk">
到
<Project Sdk="Microsoft.NET.Sdk.Web">
但后来撤消了更改。.:)
然后,我和这里的每个人都面临着同样的问题。.经过无数次重建,禁用重新共享,清理缓存,文件夹,降级软件包,删除软件包等。-我决定创建一个新的测试项目并比较配置(令人惊讶的是,新项目的测试在调试模式下工作)!
长话短说-检查Properties
文件夹。“测试”项目应该没有这样的文件夹!该文件夹可能是在我更改SDK版本时创建的较早。
删除此文件夹并重建项目后,我终于可以调试测试了!没有其他解决方案。