Я использую бета-версию OpenWrap 2.0. OpenWrap содержит поддержку для запуска юнит-тестов, мой вопрос, как именно это работает?
Должен ли я видеть его как бегуна, который берет встроенную упаковку, ищет тесты, включенные в оболочку, и пытается их запустить? Обязательно ли включать тесты внутри упаковки?
Как работает разрешение зависимостей в контексте тестов? Я могу указать область тестов, которая добавляет дополнительные зависимости, необходимые для тестов. Когда используются эти зависимости? Я предполагаю, что он используется для создания тестовых проектов и запуска тестов с помощью test-wrap? Однако, когда я включаю тесты в обертку, не должны ли эти зависимые области теста также считаться зависимостями для обертки, или они используются только как зависимости, когда я пытаюсь выполнить «test-wrap»?
Еще одна вещь, которая меня интересует в контексте тестов, это разница между зависимостями времени компиляции и времени выполнения.
В качестве примера у меня есть проект API, который определяет API. Рядом с этим проектом у меня есть 2 других проекта Impl1 и Impl2, каждый из которых определяет свою реализацию этого API. И рядом с этим у меня есть тестовый проект API.Tests, который содержит тесты на API. В тестах используется внедрение зависимостей для внедрения либо Impl1, либо Impl2 для запуска тестов.
В этом случае проект API.Tests имеет только зависимость времени компиляции от API (и должен иметь такую зависимость только как зависимость времени компиляции). Однако при выполнении тестов проект во время выполнения зависит от Impl1 или Impl2. Любые предложения о том, как упаковать это?