vstest.console.exe和dotnet test命令的区别

6
在终端运行单元测试时,vstest.console.exe和dotnet test命令之间有区别吗?比如何时应该使用其中一个。"vstest.console.exe"是专门为.Net框架设计的,而"dotnet test"则适用于dotnet core项目吗?我在谷歌或者Microsoft的文档中找不到解答。下面链接中的问题看起来很接近,但回答并没有涉及到这两者的区别。我想要在构建服务器上通过脚本运行我的C#项目,因此想知道哪个选项是最好的。 .NET框架中的测试

一些实验可以证明两者都可行,这就是为什么不需要有关于“不支持什么”的文档。 - Lex Li
你的意思是无论使用哪个框架,都可以使用其中任何一个吗?无论是 .net core 还是 .net framework? - cmoe
2个回答

3
我认为在某个时候,vstest.console.exe 只用于运行 MSTests,而 dotnet test 的设计是更加测试框架无关的,并支持其他框架如 NUnitxUnit,并有可能在不同的平台上运行(即不仅仅是 Windows 平台,就像使用 vstest.console.exe 一样)。
根据 dotnet vstest 的官方文档:

dotnet-vstest 命令运行 VSTest.Console 命令行应用程序来运行自动化单元测试。

微软还在该页面上最近添加了一个重要说明:

dotnet vstest 命令已被 dotnet test 取代,现在可以用于运行程序集。请参见 dotnet test

所以现在看起来 dotnet test 是正确的方法 :)

0

vstest和mstest之间有区别 - 前者是测试运行器,后者是测试框架。两者都可以独立使用。 - Sevenate

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接