做自动化测试脚本的时候,我们通常会有如下的步骤:
- 通过某些方式定位到我们要执行的对象、目标(Target)
- 对这个对象进行什么操作(command)
- 通过操作对定位到的元素赋值(value)
- 添加断言操作
页面元素基操:
- clear():清除
- send_keys(“value”):字母、数字、特殊字符及快捷键
- click():点击,例如按钮、超链接、单选框、复选框操作。
- Current_url:返回当前(driver浏览器对象所能控制的页面)页面的title,可以用于断言
- driver.title:返回当前页面的标签(百度一下)
- Text:获取页面.text放最后即可
- get_attribute(“value”):获取属性,如果是id,name,class等返回对应属性值,要返回输入文本框的值,直接点击输入value
- is_dispalyed():判断元素在页面中是否显示
- is_enabled():判断是否可用
- is_selected:判断是否选中,一般用复选框或者单选框的判断
if driver.find_element_by_id('su').is_dispalyed():
print("按钮正常")
else:
print("按钮失常")
练习题:
打开百度页面
获取当前页面的url,并打印出来(driver.current_url)
获取当前页面的title,并打印出来(driver.title)
百度“selenium”,点击百度一下
判断页面中的“百度一下”按钮是否正常显示,是则打印“正常显示按钮”
获取文本框中的文本,并打印出来
清除百度文本框中内容
获取页面底部的信息:把百度设为主页关于百度About Baidu百度推广
关闭浏览器
from selenium import webdriver
from time import sleep
driver=webdriver.Chrome()
driver.get("https://www.baidu.com")
cur=driver.current_url#返回网址
print(cur)
tit=driver.title#返回标签
print(tit)
driver.find_element_by_id("kw").send_keys("selenium")#输入值
sleep(1)
driver.find_element_by_id("su").click()#点击百度一下
if driver.find_element_by_id('su').is_displayed():#是否显示
print("正常显示按钮")
else:
print("不显示按钮")
aa=driver.find_element_by_id('kw').get_attribute("name")#返回名字属性
driver.find_element_by_id("kw").send_keys("selenium")
aa=driver.find_element_by_id('kw').get_attribute("value")#返回文本框输入值
print(aa)
driver.find_element_by_id("kw").clear()#清除
aa=driver.find_element_by_xpath('//*[@id="bottom_layer"]/div[1]').text#返回下部分
aa=driver.find_element_by_xpath('//*[@id="bottom_layer"]/div[2]').text
print(aa)
sleep(2)
driver.quit()