[C#] 클래스 자체가 internal일 때의 UnitTest

1681 단어 C#unittest

UnitTest 관련 기사



하고 싶은 일



이전 , private, internal 메소드를 UnitTest하고 싶을 때의 방법을 조사했지만, 클래스 자체가 internal 일 때, 원래 UnitTest 측 코드로부터 그 클래스가 보이지 않기 때문에, 테스트 할 수 없었다. 어떻게 든 Unit 테스트하고 싶습니다.

방법



InternalsVisibleTo 속성을 사용한다.

먼저 DLL 측의 AssenblyInfo.cs를 엽니다.


거기에 다음의 문장을 추가한다.
「UnitTestProject1」의 부분은, internal 클래스를 공개하는 공개처의 어셈블리명을 쓴다.
[assembly: InternalsVisibleTo("UnitTestProject1")]

이것으로, 공개처의 어셈블리(여기서 말하는 「UnitTestProject1.dll」)로부터는, Class1에 포함되는 internal인 클래스가 보이게 된다.

코드



htps : // 기주 b. 이 m / 테라 1707 / WPF - / t Ree / ms r / 028_P Ria C ぁ
이전 의 코드와 같다. Class1과 Class1Sub가 internal로 한 것.

참고



Visual Studio 단위 테스트에 사용되는 InternalsVisibleTo 특성 정보
h tp // 모리 bぉg. Ki t-en g. 이 m/? p=867

좋은 웹페이지 즐겨찾기