1.自动化测试中想要操作一个对象,首先应该识别这个对象,所以对象的定位应该是自动化测试的核心。一个对象跟一个人一样,它会有各种属性,相当于人的各种特征,我们可以通过一个人的名字,身份证号或者他住哪里找到他,那么一个对象我们也可以通过它的各种属性来定位它。(不管用那种方式找,必须保证在我们查找的页面中这个属性是这个对象独有的)
webdriver提供了一系列的对象定位方法,常用的如下:
* id
* name
* class name
* link text
* partial link text
* tag name
* xpath
* css selector
# coding=utf-8
#导入一些你需要的方法和类
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
# 实例化浏览器
driver = webdriver.Chrome()
# 需要测试的网站
url = 'https://www.baidu.com'
# 浏览器获得网址
driver.get(url)
# 通过ID的方式找到百度输入框并传入搜索内容“selenium”
driver.find_element(By.ID,'kw').send_keys('selenium')
'''
# 通过name的方式找到百度输入框并传入搜索内容“selenium”
driver.find_element(By.Name,'wd').send_keys('selenium')
# 通过tag name的方式找到百度输入框并传入搜索内容“selenium”
driver.find_element(By.TAG_NAME,'input'.send_keys('selenium')
# 通过class name的方式找到百度输入框并传入搜索内容“selenium”
driver.find_element(By.CLASS_NAME,'s_ipt').send_keys('selenium')
# 通过css的方式找到百度输入框并传入搜索内容“selenium”
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('selement')
# 通过xpath的方式找到百度输入框并传入搜索内容“selenium”
driver.find_element(By.XPATH.'//*[@id=kw').send_keys(selement")
'''
# 通过ID的方式找到百度一下按钮并点击
driver.find_element(By.ID,'su').click()
# 等待时间
time.sleep(3)
# 退出浏览器并释放资源
driver.quit()
注意:定位对象还有的写的是:driver.find_element_by_id('kw'),但是新版本的python是要写做:driver.find_element(By.ID,'kw').send_keys('selenium'),不然会不成功