Python+Selenium自动化测试框架--利用find_element(by)定位元素

本章主要学习利用find_element(by)定位元素,通过百度搜索编辑框进行学习:

 

 

前面我们学习了selenium的八种定位方式

 

 通过by定位元素,使用的方法是:

  find_element()

它包含两个参数:

  第一个参数是定位方式,这个由 By 提供;另
  第二个参数是定位的值

特别注意:

  在使用by是需要将by类导入,即from selenium.webdriver.common.by import By

如:

find_element(By.ID,"kw")
find_element(By.NAME,"wd")
find_element(By.CLASS_NAME,"s_ipt")
find_element(By.TAG_NAME,"input")
find_element(By.LINK_TEXT,u"新闻")
find_element(By.PARTIAL_LINK_TEXT,u"新")
find_element(By.XPATH,"//*[@class='bg s_btn']")
find_element(By.CSS_SELECTOR,"span.bg s_btn_wr>input#su")

 1 # coding=utf-8
 2 from selenium import webdriver
 3 from selenium.webdriver.common.by import By
 4 import time
 5 
 6 driver = webdriver.Chrome()
 7 driver.maximize_window()
 8 driver.implicitly_wait(5)
 9 
10 driver.get("http://www.baidu.com")
11 try:
12     driver.find_element(By.NAME, "wd").send_keys("selenium")
13     driver.find_element(By.XPATH, "//*[@value='百度一下']").click()
14     time.sleep(3)
15     print("测试通过,By定位成功")
16 except Exception as e:
17     print("测试失败,By定位失败", format(e))
18 driver.quit()

 

通过selenium的单元素定位,我个人推荐xpath。不过总的来说只要能够定位成功元素,达到目的你就成功了。

 

posted @ 2020-05-19 16:48  给自己一个改变的理由  阅读(4099)  评论(0编辑  收藏  举报