Obecnie bawię się najnowszym Visual Studio 2017 Release Candidate, tworząc bibliotekę .Net Standard 1.6. Używam xUnit do testowania jednostkowego mojego kodu i zastanawiałem się, czy nadal możesz testować metody wewnętrzne w VS2017.
Pamiętam, że w VS2015 można było utworzyć całą linię klasy AssemblyInfo.cs, która umożliwiłaby określonym projektom wyświetlanie metod wewnętrznych
[assembly:InternalsVisibleTo("MyTests")]
Ponieważ w projektach VS2017 .Net Standard nie ma klasy AssemblyInfo.cs, zastanawiałem się, czy nadal możesz testować wewnętrzne metody jednostkowe?
namespace
blokiem i powinien się skompilować. Nie powinno być w tym nic magicznego AssemblyInfo.cs
. Czy to nie działa? Oczywiście musisz dodać właściwą using
klauzulę lub użyć w pełni kwalifikowanego atrybutu [assembly: System.Runtime.CompilerServices.InternalsVisibleTo("Something")]
.
InternalsVisibleTo
jest to krytyczne - np. Tutaj - stackoverflow.com/a/17574183/43453