Selenium 自动化测试之元素定位
#coding = utf8
from selenium import webdriver
driver=webdriver.Chrome() ###谷歌浏览器
driver.get(url)
###简单元素定位
#by id
driver.find_element_by_id(" ")
#by name
driver.find_element_by_name(" ")
#by class name
driver.find_element_by_class_name(" ")
#by tag name
driver.find_element_by_tag_name("input")
#by css
driver.find_element_by_css_selector("a[attr=E]")
#by xpath
driver.find_element_by_xpath("//input[@id='kw']")
#by link 超链接内容
driver.find_element_by_link_text(" ")
#by partial link text 部分链接名称
driver.find_element_by_partial_link_text(" ")
####下拉框定位select
<select id=pic name=picture>
<option value=1>风景</option>
<option value=2>高山</option>
</select>
###1.首先定位下拉框
pic=driver.find_element_by_id("pic")
###2.定位选项
pci.find_element_by_xpath("//option[@value='1']")
Select 其他方法
select_by_index() :通过索引定位
select_by_value() :通过 value 值定位
select_by_visible_text() :通过文本值定位
deselect_all() :取消所有选项
deselect_by_index() :取消对应 index 选项
deselect_by_value() :取消对应 value 选项
deselect_by_visible_text() :取消对应文本选项
first_selected_option() :返回第一个选项
all_selected_options() :返回所有的选项
###对话框
##1.接受警告信息
alert=driver.switch_to_alert()
alert.accept()
##2.取消对话框
alert=driver.switch_to_alert()
alert.dismiss()
###简单操作
点击操作:.click()
清空操作:.clear()
键盘操作:.send_keys(" ")
###多窗口操作
1.简单方法
# 获取所有窗口句柄
windows = driver.window_handles
切换到当前最新打开的窗口
drvier.switch_to_window(windows[-1])
2.相对复杂
# 获得打开的第一个窗口句柄
window_1 = driver.current_window_handle
# 获得打开的所有的窗口句柄
windows = driver.window_handles
# 切换到最新的窗口
for current_window in windows:
if current_window != window_1:
driver.switch_to.window(current_window)