2016-10-28 58 views
1

我正在编写ASP.NET Core Web应用程序,我的目标是使用Visual Studio Team Services(VSTS)持续集成并持续传递到Azure。我已经到了HelloWorld基本应用程序构建和部署的地步,并且已经启动并正在运行。哪个测试运行器适用于VSTS和ASP.NET Core?

我现在处于想要添加单元测试并将其作为构建的一部分执行的阶段。

我不需要跨平台,我以前有MSTest的经验,所以这是我的第一个通话端口。但是,一些初步调查表明,它不像添加MSTest项目那么直接,而且你离开了。特别是VSTS的构建。

所以,问题是什么是到位和CD到Azure中得到一个测试框架的最痛苦的样子......

  • MSTest的
  • 的xUnit
  • 其他?

只是为了重申......我想在我的CI的一部分上,针对VSTS构建服务器上的ASP.NET Core web应用程序运行测试。有没有人用上面的框架之一成功完成这个任务,而没有太多头痛问题?

回答

2

xUnit工作得很好,我用它与net452目标,因为当我第一次启动netcoreapp1.0不支持,但它现在应该工作。

测试项目的project.json

{ 
    "version": "1.0.0-*", 
    "testRunner": "xunit", 
    "description": "MyApplication.Web.Tests Class Library", 
    "buildOptions": { 
    "preserveCompilationContext": true, 
    "copyToOutput": { 
     "include": [ ] 
    } 
    }, 
    "packOptions": { 
    "tags": [ "" ], 
    "projectUrl": "", 
    "licenseUrl": "" 
    }, 

    "dependencies": { 
    "My.Application.Web": "1.0.0-*", 
    "dotnet-test-xunit": "2.2.0-preview2-build1029", 
    "Microsoft.NETCore.Platforms": "1.0.1", 
    "xunit": "2.2.0-beta2-build3300", 
    "Xunit2Should": "5.0.0", 
    "Xunit2ShouldXml": "5.0.0" 
    }, 
    "frameworks": { 
    "net46": { 
     "dependencies": { 
     "Moq": "4.2.1510.2205" 
     } 
    } 
    } 
} 

测试工作无论是在2015年VS,并通过与dotnet test命令行(形成一个测试项目的文件夹)。此Getting started with xUnit.net (.NET Core/ASP.NET Core)文档可能会帮助您了解详细信息,并且您始终可以查找适用于.NET/.NET Core版本的正确版本的xunit。

+0

感谢您的回复。你是否使用VSTS构建工作? – Paul

+0

说实话,我还没有尝试过,但由于命令行工作没有任何先决条件被安装/上传除了dotnet cli工具,runner等来自nuget。我只在VSUD上配置过一次,这是继这个gudie之后http://www.visualstudio.com/en-us/docs/build/apps/aspnet/aspnetcore-to-azure。但是增加另一个命令行来运行测试应该是一个很大的挑战 – Tseng

相关问题