Я работаю над юнит-тестами для моего проекта.
DLL с бизнес-логикой должна быть построена для .Net 2.0, но я бы хотел использовать Moq для тестирования (требуется .Net 3.5) Поэтому я перенес все тесты в отдельный проект .Net 3.5 со ссылкой на проект бизнес-логики.
Мне нужно протестировать некоторые методы, помеченные как внутренние из моего тестового проекта. Я вижу единственный способ сделать это, используя отдельные конфигурации сборки с условными символами сборки:
#if UNITTESTS
public
#else
internal
#endif
int DoSomeAction(int param1, int param2)
{
// some logic that need to be tested here
}
но такой код выглядит некрасиво. Может быть, есть какой-то лучший способ, например метод mark с помощью специального атрибута:
[ConditionalPublic("UNITTESTS")]
internal int DoSomeAction(int param1, int param2)
{
// some logic that need to be tested here
}
Спасибо.