Команда VS Create Unit Tests не работает для внутренних методов? - PullRequest
0 голосов
/ 22 мая 2018

После написания некоторых модульных тестов я решил позволить команде Visual Studio Создать модульные тесты создать для меня некоторые заглушки для модульных тестов.Однако я заметил, что если класс, в котором живет метод public, равен internal, команда Создать модульные тесты не будет генерировать заглушку, а вместо этого выдаст следующее сообщение:

Создать модульТесты поддерживаются только в открытом классе или в открытом методе.

Я понимаю, о чем говорится в сообщении.Тем не менее, я установил атрибут InternalsVisibleTo внутри AssemblyInfo.cs, предоставляя мои методы internal моей тестовой сборке.Мне интересно - команда Visual Studio Create Unit Tests не знает об этом параметре?Есть ли обходной путь для этого?

1 Ответ

0 голосов
/ 23 мая 2018

Да.Обходной путь - сделать ваши методы общедоступными.

Сообщение чисто.Я думаю, что только тестирование открытых методов является хорошей передовой практикой, так что сделайте это.И я вижу «InternalsVisibleTo» как временный обходной путь, когда устаревший код покрывается тестом, это не постоянное решение.

...