Как запустить " dotnet xunit PathToLibrary.dll " из командной строки (в непрерывной интеграции)


Я могу "dotnet xunit", когда я нахожусь в папке, где находится проект.

Как я могу сделать это из командной строки, где я хочу передать уже скомпилированную dll в качестве параметра.

dotnet xunit PathToLibrary.dll

Я получаю ошибку:

No executable found matching command "dotnet-xunit"

Я скопировал "xunit.исполнение.рабочий стол.dll " (получить от nuget xunit.ядро.2.3.0) в текущую папку, но это не помогает.

2 3

2 ответа:

Dotnet-xunit-это инструмент CLI для каждого проекта

Использование этих инструментов требует добавления элемента <DotNetCliToolReference> в файл проекта для каждого инструмента, который вы хотите использовать. Внутри элемента <DotNetCliToolReference> вы ссылаетесь на пакет, в котором находится инструмент, и указываете нужную версию. После выполнения dotnet ограничителя восстановления, инструмент и его зависимости будут восстановлены.

Так что проверьте, что ваш .csproj содержит

<ItemGroup>
   <DotNetCliToolReference Include="dotnet-xunit" Version="2.3.0" />
</ItemGroup>

То

dotnet restore

Этот ответ не является прямым ответом на OP, но необходим для пользователей dotnet xunit

dotnet xunit удаляется начиная с xunit 2.4 Ref: Release Notes 2.4

Выдержка из примечаний к релизу:

К сожалению, этот релиз также удаляет бегун dotnet xunit, так как стабильность бегуна никогда не была идеальной, и он страдал от многих проблем, связанных с загрузкой сборки. Пользователям .Чистая ядра могут продолжать использовать VSTest (либо внутри Visual Studio, или через dotnet ограничителя тест).

Итак, Для теста xUnit framework используйте команду

   dotnet test