2013-07-25 4 views

답변

2

당신이 가짜 방법 할 수있는 코뿔소를 사용하여 통과 할 수 있다는이 다른 테스트 방법이 있나요

private static void BindableSourcePropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) 
{ 
    WebBrowser browser = sender as WebBrowser; 
    if (browser != null) 
    { 
     browser.NavigateToString(e.NewValue.ToString()); 
    } 
} 

: 코드는 다음과 유사합니다 간접적으로 WebBrowser 클래스에 대한 래퍼 호출을 사용합니다. 예를 들어
:

MyWebBrowser이 위조 될 수 밀봉 아니에요 때문에, 실제 WebBrowser에 대한 호출을 전달하는 래퍼
private static void BindableSourcePropertyChanged(DependencyObject sender, 
              DependencyPropertyChangedEventArgs e) 
{ 
    WebBrowser browser = sender as WebBrowser; 
    if (browser != null) 
    { 
     BindableSourcePropertyChanged(new MyWebBrowser(browser), e); 
    } 
} 

private static void BindableSourcePropertyChanged(MyWebBrowser browser, 
              DependencyPropertyChangedEventArgs e) 
{ 
     browser.NavigateToString(e.NewValue.ToString()); 
} 

. 원래의 콜백은 테스트되지 않지만, 래퍼에 대한 객체로 변환되기 때문에 거기에있는 로직은 거의 의미가 없습니다.

Rhino에 구속되지 않은 경우 봉인 된 회원을 위장하는 격리 프레임 워크를 사용할 수 있습니다.

var browser = new WebBrowser(); 
Isolate.WhenCalled(() => browser.NavigateToString(null)).IgnoreCall(); 

은 연기 이외의 날조 다른 회원을 밀봉 지원하는 프레임 워크/클래스가 있습니다 : 예를 들어, 같이 살펴 보겠습니다 Isolator를 사용하여.
고지 - 나는 우리가 무료입니다 주로하기 때문에, 코뿔소를 계속하고 싶은대로 Typemock에서

+0

내가 래퍼 전화를 사용합니다 일을하고 우리는 큰 코딩 팀입니다. –

관련 문제