В настоящее время я работаю с последней версией кандидата на выпуск Visual Studio 2017, создавая библиотеку .Net Standard 1.6. Я использую xUnit для модульного тестирования моего кода, и мне было интересно, можете ли вы по-прежнему тестировать внутренние методы в VS2017.
Я помню, что вы могли бы все строки класса AssemblyInfo.cs в VS2015, которые позволили бы указанным проектам видеть внутренние методы
[assembly:InternalsVisibleTo("MyTests")]
Поскольку в проектах VS2017 .Net Standard нет класса AssemblyInfo.cs, мне было интересно, можно ли по-прежнему использовать внутренние методы для модульного тестирования?
namespace
блока, и он должен скомпилироваться. В этом не должно быть ничего волшебного AssemblyInfo.cs
. Разве это не работает? Конечно, вам нужно добавить правильное using
предложение или использовать полностью определенный атрибут [assembly: System.Runtime.CompilerServices.InternalsVisibleTo("Something")]
.
InternalsVisibleTo
очень важно - например, здесь - stackoverflow.com/a/17574183/43453