使用 MSBuild.exe 和 VSTest.console.exe 的 VS 2019 自动化构建和测试

VS 2019 Automating Build and Test with MSBuild.exe and VSTest.console.exe

我的自制自动化如下(我用的是bashshell):

cd c:/tmp
rm -rf myproj
git clone <repo-url>/myproj -b releaseX
cd myproj
// Get the NuGet packages
msbuild.exe -t:restore
wait
// Build my Release Version
msbuild.exe myproj.sln -t:Rebuild -p:Configuration=Release
wait
// Run my Unit Tests that I keep in a UnitTest dir
vstest.console.exe UnitTests/bin/Release/netcoreapp2.2/UnitTests.dll
wait

除了一些硬编码的目录名称或项目名称之外,这是使用 VSTest 环境进行自动化的有效方法吗?我的目标是实现一个简洁的夜间构建和测试环境。

你的方法没有问题,会奏效的。

我给你的建议:

  1. 根据您的 UT 二进制文件的路径,您的目标是 .NET Core。您可以在 UT 项目上调用 dotnet test,而不是直接调用 vstest.console.exe。这将避免必须指定二进制文件的确切路径,dotnet 命令会找出它们的位置。
  2. 同样,您可以调用 dotnet restoredotnet build 而不是 msbuild 等价物。除了 "modern".
  3. 之外,这样做并没有太大的好处。