2015-02-04 4 views
3

oauth2를 사용하는 응용 프로그램에 e2e 로그인 테스트를 작성하려고합니다. facbook 로그인 - 다른 창이 열릴 때 (facebook 로그인). 거기에 자격 증명을 입력하려고합니다. 이 새 창이기 때문에 나는 현재각도기 - Oauth2 테스트시 facebook 로그인 화면으로 전환

browser.driver.switchTo().window(); 

을 사용하고 있습니다. 콘솔에 'window.name'을 입력하여 창 이름을 알 수 있습니다. 나는 '_e_02MT' 나는 또한 시도 'window.document.title'를 가지고 얻은

browser.driver.switchTo().window('_e_02MT'); 
browser.switchTo().window('Facebook'); 
browser.driver.switchTo().window('Facebook'); 

의 '페이스 북' 내가 시도한 다른 조합 등 에 여전히 수없는 일을 그 창문으로가. 오류가 표시됩니다.

NoSuchWindowError: no such window 

아이디어가 있습니까?

감사합니다. 대신 윈도우의 이름

답변

3

, 당신은 핸들을를 제공해야합니다

browser.getAllWindowHandles().then(function (handles) { 
    // switch to the popup 
    browser.switchTo().window(handles[1]); 

    // do stuff with the popup 
    // ... 

    // go back to the main window 
    browser.switchTo().window(handles[0]); 
}); 
+0

좋은! 그것은 효과가 있었다. 감사! – user2880391

+0

위대한 해결책 :) –

관련 문제