我自家种植的自动化设备如下(我使用bash外壳):
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环境自动化的有效方法吗?我的目标是每晚实现一个简洁的构建和测试环境。
答案 0 :(得分:1)
您的方法没有错,它将起作用。
我对您的建议
dotnet test
,而不是直接调用vstest.console.exe。这样可以避免必须指定二进制文件的确切路径,dotnet
命令可以确定它们的位置。dotnet restore
和dotnet build
而不是等效的msbuild
。除了变得更“现代”之外,这样做没有太大好处。