VS测试在本地运行,但在构建服务器上找不到

时间:2016-12-06 16:59:25

标签: c# visual-studio unit-testing mstest azure-pipelines

我有一个项目,我试图在VSTS中创建构建定义。目标是构建项目,运行所有单元测试,然后发布它们是否通过。测试是通过Microsoft.VisualStudio.TestTools.UnitTesting,在本地,一切正常 - VS 2015发现并运行所有测试顺利。

然而,构建定义中出现了一些问题。步骤进行:

  1. 运行dotnet restore
  2. 构建解决方案**\*.sln
  3. 运行dotnet publish
  4. 测试程序集**\$(BuildConfiguration)\**\*Test*.dll
  5. 剩余的发布逻辑。
  6. 在VSTS构建中似乎运行良好,直到第4步:

    Warning: No test is available in C:\agent\_work\19\s\test\Foo.Test\bin\Debug\netcoreapp1.0\Foo.Test.dll. Make sure that installed test discoverers & executors, platform & framework version settings are appropriate and try again.

    测试文件看起来像这样:

    namespace Foo.Test
    {
        [TestClass]
        public class ServiceTests
        {
            public ServiceTests()
            {
    
            }
    
            [TestMethod]
            public void RequestSuccessfullyAddsFilter()
            {
                ...
    

    那么,什么可以阻止构建定义找到测试?它找到了dll,我没有在测试装配步骤中设置任何异常参数。这看起来像是一个非常干净的设置,但必须有一些我可以在这里俯瞰的步骤。

1 个答案:

答案 0 :(得分:0)

从我的一个队友那里得到一个解决方案 - 它是一个.NET Core项目,所以将测试任务切换到dotnet测试任务解决了这个问题。