Я пытаюсь заставить Team City создать мое .NET-решение и запустить мои тесты nUnit.Как вызвать цель тестирования объекта в проекте из проекта «Решение»
Я знаю, что могу изменять отдельные проекты и говорить, что они всегда запускают модульные тесты. I не хочу, чтобы модульные тесты запускались, когда я нажимаю «строить» в визуальной студии, но я хочу, чтобы модульные тесты запускались, когда Team City запускает задачу msbuild.
Я пробовал «msbuild solutionname.sln» и дал команде город цели «BUILD» и мой пользовательский тег сборки «TEST». Однако msbuild не может найти какую-либо указанную цель при вызове решения sln. Так, я побежал MSBuild преобразовать мое решение в проект, который имеет цель, как это:
<Target Name="Build">
<MSBuild Projects="@(BuildLevel0)" >
</Target>
я наивно думал, что я мог бы написать новую задачу так:
<Target Name="BuildAndTest">
<CallTarget Targets="Build"/> <!-- This builds everything in solution -->
<CallTarget Targets="Test"/> <!-- DOES NOT WORK. This target exists in project that gets built by this solution -->
</Target>
NUnit мишень выглядит следующим образом:
<Target Name="Test" DependsOnTargets="Build" Condition=" '$(Configuration)' == 'Release'">
<NUnit Assemblies="$(OutputPath)\Tsa.BaseTest.dll" ContinueOnError="false" ToolPath="C:\Program Files\NUnit 2.5.2\bin\net-2.0\" DisableShadowCopy="true" OutputXmlFile="$(OutputPath)\nunit-results.xml" />
</Target>
Как вы можете видеть, он ссылается OutputPath, который только проект знает - решение не имеет ссылку на $ OutputPath, иначе я бы J ust поставил все тестовые цели в «проект решения».
Любые предложения о том, как я могу заставить это работать?
Я не уверен, что это точно. Я использую 4.5.2 Professional Edition. Страница может обнаруживать вывод nunit (раздел обработки отчетов XML), но Team City сам по себе не может/не будет вызывать вызов nunit для создания такого вывода. И эта версия не имеет текстового поля для меня, чтобы перечислять тестовые сборки. – MatthewMartin
@Matthew - только что проверили на работе. Мы запускаем версию 4.5.4 TeamCity Enterprise. В Runner: sln2008 У меня есть NUnit Test Settings; под этим я могу установить тесты запуска и ввести пути для тестирования сборок. Есть еще несколько вариантов. – TrueWill