VSTS 运行 部署后测试

VSTS Running tests after deployment

在将代码部署到网站后,我正在尝试 运行 在 Visual Studio Team System (VSTS) 中进行我的验收测试。部署已经工作了几个月。测试步骤失败并显示以下消息:

这是日志:

##[section]Starting: Test Assemblies **\*acceptance.tests.dll;-:**\obj\**
 ==============================================================================
 Task         : Visual Studio Test
 Description  : Run tests with Visual Studio test runner
 Version      : 2.0.24
 Author       : Microsoft Corporation
 Help         : [More Information] (https://go.microsoft.com/fwlink/?LinkId=835764)
 ==============================================================================
 !**\obj\**
[command]"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" "d:\a\r1\a\Build website\drop\HepC.Web.Acceptance.Tests.dll" /logger:trx
Microsoft(R) Test Execution Command Line Tool Version 14.0.25420.1
Copyright(c) Microsoft Corporation.All rights reserved.

Starting test execution, please wait...
Warning: No test is available in d:\a\r1\a\Build website\dropdll.Make sure that installed test discoverers & executors, platform & framework versionnd try again.


Information: Additionally, you can try specifying '/UseVsixExtensions' command if the is installed on the machine as vsix extensions and your installation supports vsix .console.exe myTests.dll /UseVsixExtensions:true

##[warning]No results found to publish.
##[section]Finishing: Test Assemblies **\*acceptance.tests.dll;-:**\obj\**

我正在使用 NUnit 3,但是 NUnit 适配器尚未打包为部署的一部分,因此它看不到它。解决此问题的最佳方法是什么?将 NUnit3TestAdapter 打包为主要网站的一部分似乎有点奇怪,这样我就可以 运行 在部署后进行一些测试。

我通常在构建时分解工件:

  • 申请
  • 测试
  • 部署

Application 是要部署的应用程序的实际二进制文件。

Tests 包含需要 运行 post 部署的 integration/functional 测试(如果有的话)和任何相关的东西(测试配置、测试适配器等)

Deployment 包含要在部署时转换的部署脚本和通用配置文件。

在您描述的场景中,NUnit 测试适配器将成为测试项目的一部分,并且您将该项目(包括测试适配器)的所有二进制文件发布到一组测试工件。

您需要将 NUnit3TestAdapter 包包含到发布使用的工件中,然后指定 自定义测试适配器的路径(VSTest.console.exe 的/TestAdapterPath 参数)Visual Studio测试step/task

建议大家在构建的时候做测试,如果测试通过,然后发布web包到artifact,那么在release的时候部署就可以了

  1. 安装 NUnit 3 test adapter package 到您的测试项目并签入更改
  2. 添加 Nuget 安装 step/task 以恢复包
  3. Visual Studio构建step/task构建解决方案
  4. Visual Studio 测试 step/task(指定 自定义测试适配器的路径 ,例如:$(Build.SourcesDirectory)\packages)
  5. 发布工件

如果你想在发布期间做测试,你可以添加复制文件step/task将适配器包复制到暂存文件夹(Build.StagingDirectory)到在工件中包含适配器包,然后使用该适配器包为 Visual Studio 测试任务 指定 自定义测试适配器路径