[DeploymentItem ( "SystemSoftware.exe")]
для частных и защищенных методов,
зачем это нужно и зачем?
Вы не можете получить доступ к закрытым, защищенным или внутренним элементам из модульного теста, который находится в другой сборке и не наследует класс, который вы пытаетесь протестировать (и не будет возможно, если ваш "модуль" быть проверенным больше, чем один класс). Чтобы иметь доступ к закрытым, защищенным или внутренним элементам, среда MSTest создаст сборку средства доступа, которая дает вам прокси для доступа к этим скрытым элементам.
DeploymentItemAttribute сообщает исполнителю теста, какие артефакты (и такие зависимости, как сборки доступа или файлы тестовых данных) должны быть развернуты, чтобы код можно было правильно выполнить. По сути, это неявно указывает платформе MSTest на создание и развертывание сборки средства доступа в этом случае.
В моем исходном классе / файле, если я укажу
к оригинальному методу и попробуйте
«Найти все ссылки». Ссылка
в модуле теста класс / файл не будет
показать для частного и защищенного
методы, но он будет отображаться для всех
публичные методы. Это почему? Это
право
См. Выше, вы не имеете прямого доступа к ним, но используете для этого прокси. Этот прокси-сервер использует отражение во время выполнения для привязки вашего вызова, поэтому его нельзя отследить в Visual Studio.