У меня есть тесты xUnit, которые отлично работают локально, но не запускаются в Azure DevOps. Тестируемая сборка представляет собой сборку .NET 5.0, как и тестовая сборка.
Изучая файл журнала из задачи VsTest, я вижу следующее
Тестовый запуск обнаружил библиотеки DLL, которые были созданы для различных версий платформы и платформы. Следующие библиотеки DLL не соответствуют текущим настройкам, такими как .NETFramework, платформа Version = v5.0 и платформа X86.
UnitTests.dll создан для Framework .NETCoreApp, Version = v5.0 и Platform AnyCPU.
Microsoft.TestPlatform.CommunicationUtilities.dll создан для Framework .NETStandard, Version = v2.0 и Platform AnyCPU.
Microsoft.TestPlatform.CoreUtilities.dll создан для Framework .NETStandard, Version = v2.0 и Platform AnyCPU.
Microsoft.TestPlatform.CrossPlatEngine.dll создан для Framework .NETStandard, Version = v2.0 и Platform AnyCPU.
Microsoft.TestPlatform.PlatformAbstractions.dll создан для Framework .NETCoreApp, Version = v2.1 и Platform AnyCPU.
Microsoft.TestPlatform.Utilities.dll создан для Framework .NETStandard, Version = v2.0 и Platform AnyCPU.
Microsoft.VisualStudio.TestPlatform.Common.dll создан для Framework .NETStandard, Version = v2.0 и Platform AnyCPU.
Microsoft.VisualStudio.TestPlatform.ObjectModel.dll создан для Framework .NETStandard, Version = v2.0 и Platform AnyCPU.
testhost.dll создан для Framework .NETCoreApp, Version = v2.1 и Platform AnyCPU.
xunit.runner.visualstudio.dotnetcore.testadapter.dll создан для Framework .NETCoreApp, Version = v2.1 и Platform AnyCPU.
Перейдите на страницу http://go.microsoft.com/fwlink/?LinkID=236877&clcid=0x409 для получения дополнительных сведений об управлении этими настройками.
Ссылка особо не помогает (возможно, содержание изменилось). Я попытался изменить это, используя аргументы командной строки в моей задаче сборки: / Framework: net50 / Platform: x64 (AnyCPU, похоже, не является допустимым вариантом).
... а также используя файл .runsettings (связанный в моей задаче сборки)
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<RunConfiguration>
<TargetPlatform>x64</TargetPlatform>
<TargetFrameworkVersion>net50</TargetFrameworkVersion>
</RunConfiguration>
</RunSettings>
... а также путем ссылки на BuildPlatform для конвейера.
Независимо от любого из этих изменений, ошибки в файле журнала (а также текущие настройки, перечисленные в первом предложении) остаются прежними.