Несовместимость между Microsoft.NET.Sdk.Functions и xunit.runner.visualstudio - PullRequest
0 голосов
/ 28 сентября 2019

У меня есть библиотека Azure Functions v2, над которой я работаю с модульными тестами, написанными с использованием xunit 2.4.1.Кажется, у меня конфликт между Microsoft.NET.Sdk.Functions 1.0.29 и xunit.runner.visualstudio 2.4.1.

Проблема заключается в том, что когда проект модульного теста ссылается на Microsoft.NET.Sdk.Functions, путь вывода компоновки изменяется на , добавляя в него дополнительную папку bin\:

Без ссылки на Microsoft.NET.Sdk.Functions выходная сборка находится в:

bin\Debug\netcoreapp2.1\unittests.dll

После добавления ссылки на Microsoft.NET.Sdk.Functions выходная сборка находится в (относительнойв папку проекта):

bin\Debug\netcoreapp2.1\bin\UnitTests.dll

К сожалению, похоже, что бегущий тест всегда ищет узел модульного теста в bin\Debug\netcoreapp2.1\UnitTests.dll, как указано в сообщении об ошибке:

Could not find file UnitTests\bin\Debug\netcoreapp2.1\UnitTests.dll.

Я пробовал следующее, ни одно из которых не решило проблему:

  • Изменение целевой структуры между 2.1, 2.2 и 3.0.Это ничем не отличается
  • Указание пути вывода в настройках проекта.Посторонняя папка bin все еще добавляется.
  • Добавление <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath> в проект модульного тестирования, но все, что это делает, это удаляет часть пути netcoreapp2.1.

Могу ли я что-нибудь сделать, чтобы заставить тестового бегуна работать в VS?

Если я сообщу об ошибке, какую из них выбрать:

  • Ошибка в Visual Studio (предоставление неверного двоичного пути для бегуна теста)?
  • Ошибка в тесте бегуна (получение неверного пути к выходному каталогу?
  • Aошибка в библиотеке Microsoft.NET.Sdk.Functions (добавление ненужного пути к выходной папке)?
...