(一)自动化测试之selenium学习心得-选择元素的基本方法
selenium是自动化框架!!
安装了pyCharm,软件自带了chrom浏览器,导入selenium库,开始我的学习之旅哈
web页面中通过选择元素来操作页面,如何选择元素是重点!
1、通过元素id来选择元素
简单例子
from selenium import webdriver
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
# 根据id选择元素,返回的是该元素对应的webElement对象
element = wd.find_element_by_id('kw')
# 通过webElement对象,就可以对页面元素进行操作
# 比如在搜索框中输入字符串
element.send_keys('小白学python ')
# 比如点击按钮进行查询
element = wd.find_element_by_id('su')
element.click()
2、根据 class属性 选择元素
from selenium import webdriver
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
# 根据class属性找元素,返回的是一个列表
elements = wd.find_elements_by_class_name('animal')
for element in elements:
print(element.text)
3.根据 tag 名 选择元素
from selenium import webdriver
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
# 根据tag名选择元素,返回的是一个列表
elements = wd.find_elements_by_tag_name('span')
# 取出列表中每个element对象,打印text属性值
for element in elements:
print(element.text)
4.通过WebElement 选择元素的方法选择元素
不仅 WebDriver对象有 选择元素 的方法, WebElement对象 也有选择元素的方法。
WebElement对象 也可以调用 find_elements_by_xxx, find_element_by_xxx 之类的方法
WebDriver 对象 选择元素的范围是 整个 web页面, 而
WebElement 对象 选择元素的范围是 该元素的内部。
from selenium import webdriver
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
element = wd.find_element_by_id('container')
# webDriver对象选择元素的范围是整个web页面
# webElement对象选择元素范围在该元素范围内部
spans = element.find_elements_by_tag_name('span')
for span in spans:
print(span.text)
5.等待界面元素出现
from selenium import webdriver
import time
# 等待界面元素出现
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 设置最大等待时长10s 隐式等待,缺省等待
wd.implicitly_wait(10)
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
text_element = wd.find_element_by_id('kw')
text_element.send_keys('小白学python')
button_element = wd.find_element_by_id('su')
button_element.click()
# id为1的元素,搜索的第一个结果
sech_element = wd.find_element_by_id('1')
print(sech_element.text)

浙公网安备 33010602011771号