传统上,nunit-console.exe
已包含在存储库和构建服务器(或任何其他机器)上,此 EXE 是从某个构建脚本调用的。
现在 NUnit.Runners package可用我想知道如何从 psake 构建脚本中使用它。它是一个解决方案级别的包,所以它不会在 packages.config
中留下任何痕迹,并且不能像其他项目级别的包一样自动恢复,所以我想需要调用 Install -Package
来自psake 脚本,等待下载然后执行单元测试?希望此下载只能运行一次,并且每次运行时都不会减慢构建速度。还是会?
最佳答案
我自己也遇到了。很容易修复如下:
从现在开始,当你构建时,如果 Nunit.Runners 包不在机器上,Nuget 将拉下它。然后,我在命令行构建中从包中引用 Nunit 运行器。
我在为 TeamCity build light on Github 做的一个小项目中工作。 .单元测试项目中的 Packages.config 已如上所述进行了修改。您可以查看 MSBuild 文件以了解我如何从命令行运行测试。 (build.proj,它引用了存储库的 tools\msbuild 文件夹中包含的一些目标和属性)。在尝试在 VS.NET 中或从命令行 (clicktobuild.bat) 构建之前,您需要安装最新的 Nuget 包管理器。
您应该能够很容易地将如何从正确的位置运行 Nunit 控制台的想法移植到 psake 中。
https://stackoverflow.com/questions/9485921/
相关文章:
c# - 如何从命令行构建 .csproj 并将日志写入指定位置?
android - 错误 : Program type already present: andro
c++ - 使用 CMake、Clang 和 Ninja 在 Windows 上构建 c++ 项目
c# - Visual Studio 无法写入输出文件 '...\obj\Debug\Foo.Bar
build-process - 特定于目标的变量作为 Makefile 中的先决条件
msbuild - 为什么 autoconf/automake 项目会链接到已安装的库而不是本地开发
c++ - 在 Mac 上构建 Googletest 时出现链接错误(命令行)