Консольный бегунок.NET Standard 1.5 XUnit - Как запустить мои юнит-тесты?
У меня есть тестовый проект с.NET Standard 1.5
IDE: сообщество Visual Studio 2017
Я включил xunit
а также xunit.runner.console
но я не могу запустить тесты. Я старался dotnet test
на тестовом проекте, но я получаю следующую ошибку
Не удалось найти testhost.dll для исходного файла 'D:\Dev\Visual Studio 2017\CSharpSeven.NewFeatures\CSharpSeven.NewFeatures\CSharpSeven.Tests\bin\Debug\netstandard1.5\CSharpSeven.Tests.dll'. Убедитесь, что у тестового проекта есть ссылка Nuget на пакет "microsoft.testplatform.testhost".
мой .csproj
является следующим:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard1.5</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.TestPlatform.TestHost" Version="15.0.0" />
<PackageReference Include="System.ValueTuple" Version="4.3.0" />
<PackageReference Include="xunit" Version="2.2.0" />
<PackageReference Include="xunit.runner.console" Version="2.2.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\CSharpSeven\CSharpSeven.csproj" />
</ItemGroup>
</Project>
Я довольно долго пытался запустить тесты, кто-нибудь может помочь?
2 ответа
Тестовые проекты должны быть запускаемыми приложениями. Вам нужно ориентироваться на конкретную среду выполнения. Например:
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
Смотрите этот ответ для получения дополнительной информации
Вы пытались сначала выполнить восстановление и сборку?
dotnet restore
dotnet build
Это должно добавить все недостающие пакеты, после чего вы можете запустить тесты.