로컬 (directConnect : true)에서 로컬로 실행되는 각도기 테스트를 사용하고 있지만 원격 Selenium 서버 (Grid)에서 실행하려고하면 항상 다음과 같은 메시지가 표시됩니다. 메시지.원격 셀렌 서버에서 각도기 테스트를 실행할 때 Jasmine spec timeout
A Jasmine spec timed out. Resetting the WebDriver Control Flow.
의 실패에 메시지를 찾고 및 스택은 내 모든 테스트 케이스에 대해 다음 표시 :
Message:
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL.
Stack:
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL.
at Timer.listOnTimeout (timers.js:92:15)
내가 같은 자스민 시간 제한 간격을 증가 같은 것들의 숫자를 시도했습니다 추가 conf에 대한 getPageTimeout 및 allScriptsTimeout과 같은 이전 제한 시간이지만 재스민 시간 초과 오류가 발생합니다. 로그에 다음 오류가 표시됩니다.
00:03:18.328 INFO - Done: [execute async script: try { return (function (rootSelector, ng12Hybrid, callback) {
var el = document.querySelector(rootSelector);
try {
if (!ng12Hybrid && window.getAngularTestability) {
window.getAngularTestability(el).whenStable(callback);
return;
}
if (!window.angular) {
throw new Error('window.angular is undefined. This could be either ' +
'because this is a non-angular page or because your test involves ' +
'client-side navigation, which can interfere with Protractor\'s ' +
'bootstrapping. See http://git.io/v4gXM for details');
}
if (angular.getTestability) {
angular.getTestability(el).whenStable(callback);
} else {
if (!angular.element(el).injector()) {
throw new Error('root element (' + rootSelector + ') has no injector.' +
' this may mean it is not inside ng-app.');
}
angular.element(el).injector().get('$browser').
notifyWhenNoOutstandingRequests(callback);
}
} catch (err) {
callback(err.message);
}
}).apply(this, arguments); }
catch(e) { throw (e instanceof Error) ? e : new Error(e); }, [body, false]])
내 응용 프로그램이 각도로 표시되어 있으며 로컬로 실행 중일 때 성공적으로 실행됩니다. 나는 (이 아니라 html 태그 안에, 내 NG-앱이 몸에없는 BC)뿐만 아니라 conf의에서
rootElement='html#ng-app'
설정,
browser.ignoreSynchronization = true
설정을 시도했습니다. 프레임 워크는 'jasmine2'를 시도했지만 'jasmine'으로 설정되었지만 차이가없는 것으로 보입니다. 원격 서버에서 firefox를 시작할 수 있으며 UI가 시작된 firefox 세션을 보여줍니다. 그러나 그것은 단지 시간 초과가 발생할 때까지 거기에 앉는다. 모든 입력을 부탁드립니다!