Назовите меня сумасшедшим (я к этому привык!).
Я поместил свои тесты в ту же сборку, что и тестируемый код.
Код в пространстве имен N.M
получает тесты в пространстве имен N.M.Tests
.
Таким образом, типы internal
могут быть легко протестированы модулем, что подходит для TDD.
Без сложности дополнительных зависимостей сборки из-за модульных тестов вы избежите исходной проблемы.
Основное возражение, которое я слышу, заключается в том, что вы не хотите отправлять свои тесты клиентам. Однако, если пропускная способность или объем хранилища особо не ограничены, я не видел реальной причины, по которой тесты доставки наносят ущерб.