• 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 
    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()   #关闭浏览器,进程杀死

    定位元素的7种方式:

    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("id","kw").send_keys("selenium")
    获取元素文本内容
    blogname = driver.find_element_by_class_name('blogName').text
    print("获取的文本内容是:",blogname)

    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("//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']")
  • 相关阅读:
    DRF 分页
    DRF 权限 频率
    DRF 版本 认证
    opencl(6)读写传输命令、内存映射命令
    opencl(5)缓存对象
    opencl(4)命令队列
    opencl(3)程序、内核
    opencl(2)平台、设备、上下文的获取与信息获取
    epoll
    unsigned 变量名:n
  • 原文地址:https://www.cnblogs.com/hanxiaobei/p/6662004.html
Copyright © 2020-2023  润新知