저는 코드 테스트의 초보자이며 assert
창녀 였습니다 . 단위 테스트에서 나를 걱정하는 한 가지는 종종 그렇지 않은 필드 를 만들 public
거나 (또는 적어도 internal
) 필드를 작성하고 대신 메소드 를 만드는 것입니다 .private
readonly
private
protected virtual
최근에 PrivateObject 클래스 와 같은 것을 사용하여 리플렉션을 통해 객체의 모든 항목에 액세스 하여이를 피할 수 있음을 발견했습니다 . 그러나 이렇게하면 테스트를 유지 관리하기가 어렵습니다 (컴파일 시간보다는 실행시 실패합니다. 간단한 이름 바꾸기로 인해 깨지기 때문에 디버그하기가 어렵습니다 ...). 이것에 대한 당신의 의견은 무엇입니까? 액세스 제한에 관한 단위 테스트의 모범 사례는 무엇입니까?
편집 : 예를 들어 디스크의 파일에 캐시가있는 클래스가 있고 테스트에서 메모리에 쓰려고한다고 생각하십시오.