관리 메뉴

don't stop believing

Chrome에서 Tab 변경하기 본문

Testing Automation/Selenium

Chrome에서 Tab 변경하기

Tongchun 2018. 3. 21. 16:03

Chrome에서 링크를 클릭했을 때 새로운 탭에서 사이트가 로딩되는 경우가 있습니다.

이럴때 Chrome의 화면 Tab을 이동해 보겠습니다.


방법은 window_hadles 속성를 사용하는 것입니다.

driver.switch_to_window(driver.window_handles[1])

이렇게 하면 Chrome의 두번 째 Tab으로 이동하게 됩니다.


# -*- coding: utf-8 -*-
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

# Chrome WebDriver를 이용해 Chrome을 실행합니다.
driver = webdriver.Chrome(executable_path='C:/Users/jake/AppData/Local/Programs/Python/chromedriver.exe')

# http://dejavuqa.tistory.com/190 페이지로 이동합니다.
driver.get("http://dejavuqa.tistory.com/190")
time.sleep(2)

# 페이지 중 링크 텍스트에 '도커란 무엇인가'가 포함된 링크를 찾습니다.
continue_link = driver.find_element_by_partial_link_text('도커란 무엇인가')
time.sleep(2)

# 찾은 링크를 클릭합니다.
# 이때 새로운 tab으로 열리게 됩니다.
continue_link.click()
time.sleep(5)

# Chrome 브라우저의 2번째 tab으로 이동합니다.
# window_handles는 배열로 되어있으며, 0이 첫번째 tab, 1이 두번째 tab입니다.
driver.switch_to_window(driver.window_handles[1])

# 두번째 tab의 웹 페이지에서 CentOS라는 링크를 찾아 확인해 줍니다.
# send_keys(Keys.NULL)을 하면 링크가 어디있는지 확인해 줍니다.
# Keys.NULL을 사용하려면 위에 추가한 것처럼 import Keys를 추가해야 합니다.
centos_link = driver.find_element_by_link_text('CentOS')
centos_link.send_keys(Keys.NULL)
time.sleep(5)

# javascript의 alert() 함수로 popup창을 띄워줍니다.
driver.execute_script("alert('여기까지 탭 전환이었습니다. 즐~');")

# WebDriver를 종료합니다. (브라우저 닫기)
#driver.quit()

스크립트를 따라해 보세요.


'Testing Automation > Selenium' 카테고리의 다른 글

iframe 처리하기  (0) 2018.03.22
element highlight로 확인해 보기  (0) 2018.03.22
Chrome에서 Tab 변경하기  (0) 2018.03.21
Selenium IDE (Chrome Extension) 사용하기  (0) 2018.03.19
Webdriver 실행하기  (0) 2018.03.19
Katalon Automation Recorder  (0) 2018.03.13
0 Comments
댓글쓰기 폼