Указание тестов в качестве цели сборки в приложениях .NET Framework - PullRequest
0 голосов
/ 08 марта 2019

В настоящее время у меня есть приложение .NET Framework, процесс сборки которого я пытаюсь автоматизировать с помощью jenkins. Есть ли способ указать тесты в Target в файле проекта запуска, чтобы я мог указать команду, например:

msbuild / t: Test

а он будет запускать тесты?

1 Ответ

0 голосов
/ 10 марта 2019

Я бы порекомендовал вам создать новый proj файл с Test Target.

Например, вы создадите файл в корне вашего хранилища, назовите его jenkins.build,и поместите в него следующий код:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Target Name="Test">
    <ItemGroup>
        <UnitTests Include="$(WorkingFolder)\**\bin\$(Configuration)\**\*.UnitTests.dll;" Exclude="$(WorkingFolder)\**\*Microsoft.VisualStudio.*;"/>
    </ItemGroup>

    <PropertyGroup>
      <VSTestPath>"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe"</VSTestPath>
      <VSTestCommand>
          $(VSTestPath) @(UnitTests->'&quot;%(FullPath)&quot;', ' ')
      </VSTestCommand>
    </PropertyGroup>

    <Exec Command="$(VSTestCommand)" ContinueOnError="false" />
  </Target>
</Project>

Затем назовите этот файл с помощью msbuild jenkins.build /t:Test.

(Конечно, этот файл определен многими вещами, которые зависят от среды.)

...