NUnit Test Adapter 3 не может найти NUnit3 Framework, из-за чего Test Explorer не показывает Test

У меня есть проект, в котором я упаковал NUnit3 Framework вместе с некоторыми другими во внутреннюю dll. Однако, когда я ссылаюсь на dll в проекте, я не могу заставить TEST отображаться в Visual Studio 15, Test Explorer.

Внутри классов проекта я могу использовать методы NUnit.Framework. Я думаю, что проблема связана с NUnitTestAdapter3, который не может найти ссылку на NUnit3Framework. Потому что после того, как я удалю Nunit3 Framework из моей DLL и просто добавлю NUnit3 Framework и тестовый адаптер NUnit 3 в свой проект, я смогу показать тест. Итак, я предполагаю, что существует разрыв между пакетом тестового адаптера NUnit3 и моей DLL, которая содержит NUnit3 Framework.

Есть ли способ, чтобы тестовый адаптер NUnit3 ссылался на NUnit3 Framework в моей пользовательской DLL, чтобы показать их?


person SomeEngineer89    schedule 06.06.2018    source источник


Ответы (1)


Проблема не в адаптере, а в NUnit Test Engine, который он использует. В движке есть код для определения того, какой фреймворк используется. Этот код на самом деле зависит от имени фреймворка.

В NUnit V2 мы пытались загрузить любую сборку, на которую вы указывали. Но с NUnit 3 движок должен выяснить, какая платформа используется, поскольку он поддерживает несколько платформ через расширения.

В настоящее время нет никакого способа обойти это. Вам нужно использовать настоящую сборку nunit.framework.

person Charlie    schedule 06.06.2018
comment
Спасибо за эту информацию. Можно ли изменить код NUnit Test Engine, чтобы использовать nunit.framework моей пользовательской dll? Я только сейчас начинаю просматривать решение nunit.engine, чтобы попытаться справиться с этим. Я вижу ссылки в драйверах, и это все. - person SomeEngineer89; 07.06.2018
comment
Это, конечно, возможно. См. github.com /nunit/nunit-console/blob/master/src/NUnitEngine/ - person Charlie; 08.06.2018
comment
Однако вам также потребуется заменить модифицированную копию движка на ту, которая установлена ​​адаптером NUnit 3 VS. - person Charlie; 08.06.2018