Azure Pipelines - задача VS Test завершается ошибкой при предоставлении критериев фильтрации.

В своем Azure Pipeline я пытаюсь собрать и запустить код. Поэтому я включил задачи «Восстановление NuGet», «Построить решение» и «Тест VS».

Когда я пытаюсь применить критерии фильтра в VS Test, он показывает ошибку, с которой в этих критериях поиска не обнаружено ни одного тестового примера:

NUnit couldn't find any tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.Objects\bin\Release\NUnit3.TestAdapter.dll
Running all tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.PageObjects\bin\Release\NUnit3.TestAdapter.dll
NUnit couldn't find any tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.PageObjects\bin\Release\NUnit3.TestAdapter.dll
Running all tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.Resource\bin\Release\NUnit3.TestAdapter.dll
NUnit couldn't find any tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.Resource\bin\Release\NUnit3.TestAdapter.dll
Running all tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Automation.TestSuite.dll
NUnit3TestExecutor converted 213 of 213 NUnit test cases
Skipping assembly - no matching test cases found
Running all tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Microsoft.TeamFoundation.Test.WebApi.dll
NUnit couldn't find any tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Microsoft.TeamFoundation.Test.WebApi.dll
Running all tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Microsoft.TeamFoundation.TestManagement.WebApi.dll
NUnit couldn't find any tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Microsoft.TeamFoundation.TestManagement.WebApi.dll
Running all tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\NUnit3.TestAdapter.dll
NUnit couldn't find any tests in C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\NUnit3.TestAdapter.dll
NUnit Adapter 3.9.0.0: Test execution complete
No test matches the given testcase filter `Category = Enrollment` in C:\AzureAgent2\_work\2\s\Main\Business\Automation.Objects\bin\Release\NUnit3.TestAdapter.dll C:\AzureAgent2\_work\2\s\Main\Business\Automation.PageObjects\bin\Release\NUnit3.TestAdapter.dll C:\AzureAgent2\_work\2\s\Main\Business\Automation.Resource\bin\Release\NUnit3.TestAdapter.dll C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Automation.TestSuite.dll C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Microsoft.TeamFoundation.Test.WebApi.dll C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\Microsoft.TeamFoundation.TestManagement.WebApi.dll C:\AzureAgent2\_work\2\s\Main\Business\Automation.TestSuite\bin\Release\NUnit3.TestAdapter.dll

Мой Test Suite будет выглядеть так.

    // [Category("Enrollment")]
    // [Category("Regression_TS")]
    // [Test, TestTimeOutValue, Parallelizable(ParallelScope.Self), TestDescription("Enroll_001 - Enroll Button\n" +
    //    "Enroll_002 - Log In to Business\n" +
    //    "Enroll_003 - Log Out of Business")]

person karthik    schedule 04.06.2020    source источник
comment
Я предоставил ответ, который, как я подтвердил, работает. Если у вас по-прежнему возникают проблемы, сообщите об этом подробнее.   -  person HitzSPB    schedule 05.06.2020
comment
Как насчет проблемы? Решил ли приведенный ниже ответ HitzSPB ваш вопрос? Если да, вы можете принять его как Ответ, чтобы он мог помочь другим участникам сообщества, у которых возникают такие же проблемы, и мы могли бы заархивировать эту ветку, спасибо.   -  person Leo Liu-MSFT    schedule 10.06.2020


Ответы (1)


Я проверил это, и он отлично работает.

Тестовый проект

using NUnit.Framework;

namespace UnitTestProject1
{
  public class UnitTest1
  {
    [Category("Enrollment")]
    [Test]
    public void TestMethod1()
    {
      Assert.True(true);
    }
    [Test]
    public void TestMethod2()
    {
      Assert.True(true);
    }
  }
}

Установленные пакеты

<packages>
  <package id="NUnit" version="3.12.0" targetFramework="net48" />
  <package id="NUnit3TestAdapter" version="3.16.1" targetFramework="net48" developmentDependency="true" />
</packages>

В задаче VSTest вы добавляете следующий код в фильтр

TestCategory=Enrollment

Если вы используете сборку YAML, это должна быть эта строка

testFiltercriteria: 'TestCategory=Enrollment'

И это выглядит так

Задача vstest Azure DevOps с фильтром

конечный результат  Результат теста на портале Azure Devops

person HitzSPB    schedule 05.06.2020