Selenium基于Python web自动化基础一 -- 基础汇总及元素定位操作
Selenium是UI层WEB端的自动化测试框架,也是目前市面上比较流行的自动化测试框架。
ui层自动化测试本质是什么?
模拟用户的真实操作行为。
基础汇总
1 导入所需要的模块 2 from selenium import webdriver 3 import time 4 5 生成一个driver变量 6 driver = webdriver.Firefox() 7 8 #浏览器最大化 9 # driver.maximize_window() 10 #自定义浏览器的宽和高 11 # driver.set_window_size(666,555) 12 13 url = "http://www.cnblogs.com/hanxiaobei/" 14 打开url链接 15 driver.get(url) 16 time.sleep(5) 17 打印打开页面的title 18 print("网站title",driver.title) 19 20 #截图并保存为1.png 21 driver.get_screenshot_as_file("1.png") 22 driver.find_element_by_class_name('blogName').text #获取定位到的元素文本内容 23 #刷新当前页面 24 driver.refresh() 25 26 time.sleep(3) 27 driver.get("http://www.baidu.com") 28 print("网站的title",driver.title) 29 30 driver.back() #后退 31 driver.forward()#前进 32 33 driver.close() #关闭页面,进程还在 34 # driver.quit() #关闭浏览器,进程杀死
元素定位
1 # driver.find_element_by_id("kw").send_keys("selenium") 2 # driver.find_element_by_name("wd").send_keys("selenium") 3 # driver.find_element_by_class_name("s_ipt").send_keys("selenium") 4 # driver.find_element_by_xpath(".//*[@id='kw']").send_keys("selenium") 5 #定位超链接:第一种是精确匹配,第二种是模糊匹配 6 # driver.find_element_by_link_text("新闻").click() 7 # driver.find_element_by_partial_link_text("我是那个").click() 8 # driver.find_element_by_css_selector(".s_ipt").send_keys("selenium")
定位元素的另一种写法:
1 driver.find_element(By.ID,"kw").send_keys("selenium")
元素定位方法
xpath定位总结:
1、绝对路径:driver.find_element_by_xpath("html/body/a").click()
2、//标签名[@属性名=属性值]:
driver.find_element_by_xpath("//a[@href='http://www.baidu.com/s?wd=测试']").click()
driver.find_element_by_xpath("//*[@href='http://www.baidu.com/s?wd=测试']").click()
3、contains、start-with:
driver.find_element_by_xpath("//a[contains(@href,'测试')]").click() #包含
driver.find_element_by_xpath("//*[contains(text(),'测试')]").click()
driver.find_element_by_xpath("//a[starts-with(@href,'in')]").click() #以什么开头
#//div[starts-with(@id,'in')] 选择id属性以in开头的
4、利用两个元素属性进行唯一定位:and、or
driver.find_element_by_xpath("//*[@id='kw' and @name='wd']")
元素定位Chrome调试方法:
css定位选择器:https://www.w3school.com.cn/cssref/css_selectors.asp