Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么dotnetvstest返回;“中没有可用的测试”;测试何时在vstest.console.exe中工作?_C#_.net_Visual Studio_.net Framework Version_Vstest - Fatal编程技术网

C# 为什么dotnetvstest返回;“中没有可用的测试”;测试何时在vstest.console.exe中工作?

C# 为什么dotnetvstest返回;“中没有可用的测试”;测试何时在vstest.console.exe中工作?,c#,.net,visual-studio,.net-framework-version,vstest,C#,.net,Visual Studio,.net Framework Version,Vstest,我有一个为.NETFramework 4.6中的测试项目构建的dll文件 当我执行vstest.console.exe test.dll时,测试运行正常,但当我执行dotnet vstest.dll时,它会显示 test.dll中没有可用的测试。请确保已注册测试发现者和执行者,并且平台和框架版本设置适当,然后重试 我想在dll上运行coverlet,但在我运行dotnet vstest之前,它似乎无法运行。我可以重现您的问题,但在我的情况下,我无法运行vstest.console.exe tes

我有一个为.NETFramework 4.6中的测试项目构建的dll文件

当我执行
vstest.console.exe test.dll
时,测试运行正常,但当我执行
dotnet vstest.dll
时,它会显示

test.dll中没有可用的测试。请确保已注册测试发现者和执行者,并且平台和框架版本设置适当,然后重试


我想在dll上运行coverlet,但在我运行
dotnet vstest
之前,它似乎无法运行。

我可以重现您的问题,但在我的情况下,我无法运行
vstest.console.exe test.dll
dotnet vstest.dll
。他们两人只是吐出了同样的错误:没有可用的测试

我使用NUnit作为我的测试框架来重现这个问题。为了解决这个问题,我添加了对Nunit3TestAdapter的引用,并重新构建了解决方案。然后,两个命令
vstest.console.exe test.dll
dotnet vstest.dll
都按预期工作

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="NUnit" version="3.12.0" targetFramework="net46" />
  <package id="NUnit3TestAdapter" version="3.16.1" targetFramework="net46" developmentDependency="true" />
</packages>

如果您使用的测试框架与NUnit不同,那么应该有一个相应的适配器来达到相同的目的

我已经验证了这对于MSTest也是有效的

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="MSTest.TestAdapter" version="2.1.0" targetFramework="net46" />
  <package id="MSTest.TestFramework" version="2.1.0" targetFramework="net46" />
</packages>


我们正在使用Microsoft.VisualStudio.TestTools。UnitTesting@agentq15该名称空间属于MSTest.TestFramework nuget包,其对应的适配器是MSTest.TestAdapter,因此请尝试。我已经证实,它们与我的回答中的NUnit一样协同工作。