don't stop believing

find_element By로 정리하기 본문

Testing Automation/Selenium

find_element By로 정리하기

Tongchun 2017. 11. 7. 16:29

앞서 selenium에서 element를 찾는 것을 확인했습니다.

Selenium Locating Elements (python)


각 element에 따라 method를 따로 사용하는 것 보다 깔끔하게 정리하기 위해 By를 사용해 봅시다.

driver.find_element(By.<속성>, '<속성 값>')으로 사용합니다. 여러 element를 찾을 경우 find_elements로 할 수 있습니다.


사용은 아래와 같이 합니다.

from selenium.webdriver.common.by import By

driver.find_element(By.XPATH, '//button[text()="Some text"]')
driver.find_element(By.XPATH, '//button')
driver.find_element(By.ID, 'loginForm')
driver.find_element(By.LINK_TEXT, 'Continue')
driver.find_element(By.PARTIAL_LINK_TEXT, 'Conti')
driver.find_element(By.NAME, 'username')
driver.find_element(By.TAG_NAME, 'h1')
driver.find_element(By.CLASS_NAME, 'content')
driver.find_element(By.CSS_SELECTOR, 'p.content')

driver.find_elements(By.ID, 'loginForm')
driver.find_elements(By.CLASS_NAME, 'content')


By 속성은 아래와 같습니다.

  • ID = "id"
  • XPATH = "xpath"
  • LINK_TEXT = "link text"
  • PARTIAL_LINK_TEXT = "partial link text"
  • NAME = "name"
  • TAG_NAME = "tag name"
  • CLASS_NAME = "class name"
  • CSS_SELECTOR = "css selector"





Comments