2009-12-03 2 views
3

단위 테스트 파일 읽기 작업을하려고합니다. 이 시나리오에서는 특정 사용자가 읽기 액세스 권한이없는 경우 예외를 받아야한다는 것을 확인해야합니다 ...NUnit에서 테스트 파일 권한을 단위 화하는 방법은 무엇입니까?

그러나 어떻게 든 작동하지 못하고 아무도 제안 할 수 없습니까?

PS : 나는 예외를 throw 모의를 사용하는 대신에 실제로 파일을 읽고 파일을 읽는 대신하는, 당신은 장소에서 검사를받을 필요가 코뿔소 모형을 사용하고 NUnit를

+2

는 우리에게 몇 가지 코드를 보여줄 수 또는 어떻게 작동하지 않는지도 알려주세요. –

답변

2

당신은 특정 예외를 던질 Rhino.Mocks "수행"확장자를 사용할 수 있습니다

public delegate void ThrowExceptionDelegate(); 
mystub.Stub(x => x.ReadFile()).Do(new ThrowExceptionDelegate(delegate() 
    { throw new IOException(); } 
    )); 

이것은 당신의 예외 처리 코드를 테스트 할 수있다.

1

해요 . 그런 다음 적절한 처리가 트리거되고 일이 제대로 작동하는지 확인할 수 있습니다.

더 나은 대답이 필요한 경우 지금까지 작성한 테스트의 골격과 클래스의 예를 제공해야합니다.

1

가설을 너무 많이 사용하면 조금 위험 할 수 있습니다. 이 경우 프로그래밍 방식으로 + 설정되지 않은 파일 사용 권한을 설정하는 것이 쉽습니다.

나는 비슷한 문제가 있었다 - 권한 문제를 테스트하고 싶었 + 파일 권한으로 장난하는 라이브러리 API를 래핑하는 다음 헬퍼 클래스를 내놓았다

set file permissions for c:\program files\company\app\file for all users