2016-07-06 2 views
0

우리는 우리의 어플리케이션을위한 실시간 데이터를 제공하는 웹 서비스를 가지고 있습니다. 해당 웹 서비스에 연결하기 위해 $ .connection을 사용합니다. 그 코드는 다음과 같을 것입니다. -유닛 테스트를 위해 signalR 연결을 가짜로 만드는 방법

this.myConnect = $.connection(myURL); 
this.myConnect.start(settingsWhichIncludesACallBack).fail(anotherfunction); 

시작과 연결 방법을 어떻게 스파이 할 수 있습니까? 즉, webService에 대한 실제 연결을 설정하고 싶지 않지만 여전히 내 콜백 (설정으로 전달됨)을 호출하기를 원합니다.

나는 $ .connection에 대해 fake를 호출하기 위해 Jasmine 스파이를 사용하려고 시도하지만 명백한 이유 때문에 this.myConnect.start에서 유형 오류에 대해 'not a function'으로 실패합니다.

답변

0

IHubCallerConnectionContext 인터페이스를 사용하여 테스트 용 허브 메소드를 시뮬레이트하기위한 mock 객체를 만들 수 있습니다.

체크 아웃 링크 : Unit Testing SignalR Applications

1

내가 전에이 같은 문제에 달려 모의 signalR 클라이언트를 만들 this 기사를 사용한 적이 있습니다. 실제로 그 사이트에서 정확한 스크립트를 복사하고 실제 signalR 클라이언트 대신 내 설정에 모의가 포함되었습니다. 이 글에는 단위 테스트를 작성하는 데 모의 방법을 사용하는 방법에 대한 글이 적지 않다. 저자가 모의 클라이언트를 사용하여 작성한 단위 테스트의 몇 가지 예가 아래쪽에있다.

관련 문제