.net core 是否可以将.NET Core XUnit项目作为独立应用程序运行?
我的设想是,我不想依赖于环境中已安装的dotnet版本。理想情况下,我希望有一个独立的XUnit应用程序,我可以使用它在目标环境中运行测试 .NET核心控制台应用程序的输出类型为.net core 是否可以将.NET Core XUnit项目作为独立应用程序运行?,.net-core,xunit,.net Core,Xunit,我的设想是,我不想依赖于环境中已安装的dotnet版本。理想情况下,我希望有一个独立的XUnit应用程序,我可以使用它在目标环境中运行测试 .NET核心控制台应用程序的输出类型为Exe,因此作为独立发布后,我们可以执行发布的可执行文件。这是可以理解的,因为控制台应用程序在应用程序中有一个入口点。在XUnit测试项目中,我们没有入口点 仅将Exe添加到XUnit测试项目中并没有任何帮助(可以理解)我可以通过执行以下操作来实现: 在我想要运行的XUnit测试项目中,将.csproj修改为: ``
Exe
,因此作为独立发布后,我们可以执行发布的可执行文件。这是可以理解的,因为控制台应用程序在应用程序中有一个入口点。在XUnit测试项目中,我们没有入口点
仅将
Exe
添加到XUnit测试项目中并没有任何帮助(可以理解)我可以通过执行以下操作来实现:
- 在我想要运行的XUnit测试项目中,将.csproj修改为:
netcoreapp2.1
Exe
假的
```
- 包括此处提到的跑步者(请注意,这确实有一个入口点):
- 现在将应用程序发布为独立应用程序。例如,我想在Linux机器上运行用.NETCore编写的测试。示例:
dotnet发布-c发行版-r linux-x64
- 现在,假设您的测试项目名为“Foo.Tests”,那么在发布的输出中应该会看到一个名为“Foo.Tests”的可执行文件。通过执行“/Foo.Tests”来执行它
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<OutputType>Exe</OutputType>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="xunit" Version="2.3.1" />
<PackageReference Include="xunit.runner.utility" Version="2.3.1" />
</ItemGroup>
</Project>