zoukankan      html  css  js  c++  java
  • Web测试入门:Selenium+Chrome+Python+Mac OS

    一、环境配置

    1. Chromedriver 下载及环境配置
    • url:使用WebDriver在Chrome浏览器上进行测试时,需要从http://chromedriver.storage.googleapis.com/index.html网址中下载与本机chrome浏览器对应的驱动程序,驱动程序名为chromedriver;
    • 解压chromedriver,并将其mv 到/usr/local/bin下(目录下必须要有对应版本的driver);
    1. 安装selenium:执行 python -m pip install selenium

    二、简单的 python 程序

    • 示例1:find_element_by_id()方法
    # coding = utf-8
    from selenium import webdriver
    from time import sleep, ctime
    import os
    
    driver = webdriver.Chrome()
    driver.get("http://www.baidu.com")
    driver.find_element_by_id("kw").send_keys("MacOS")
    driver.find_element_by_id("su").click()
    sleep(5)
    driver.quit()
    
    
    • 示例2: (ffind_element_by_xpath()方法)
    # coding = utf-8
    from selenium import webdriver
    from time import sleep, ctime
    import os
    
    driver = webdriver.Chrome()
    driver.get("https://dblp.uni-trier.de/search/")
    driver.find_element_by_xpath('//*[@id="completesearch-form"]/input').send_keys(" zhou zhihua")
    
    sleep(5)
    
    driver.find_element_by_xpath('//*[@id="completesearch-authors"]/div/ul/li/a').click()
    
    sleep(15)
    
    
    driver.quit()
    
    

    三、 webdriver 的一些用法

    • 定位方法:selenium总共有八种定位方法
    1. By.id() 通过id定位
    2. By.name() 通过name 定位
    3. By.xpath() 通过xpath定位
    4. By.className() 通过className定位
    5. By.cssSelector() 通过CSS 定位
    6. By.linkText() 通过linkText
    7. By.tagName() 通过tagName
    8. By.partialLinkText() 通过匹到的部分linkText
    • Chrome 元素查找
    1. 打开开发者工具

    2. 移动到对应元素上。注意,寻找 Browser中对应的高亮提示(如下图1),实际上是在开发者工具Elements 视图上移动光标行(图2)

      图1 浏览器中高亮提示(随开发者工具 Elements 视图中光标行的移动)

    3. 右键copy 元素 xpath 或其他定位参数

      图2 移动源代码中光标行(寻找需要定位的元素)

    4. paste 到脚本中

  • 相关阅读:
    jdk和jre是什么?都有什么用?(转帖)
    滚动栏范围位置函数(SetScrollRange、SetScrollPos、GetScrollRange、GetScrollPos)
    C#异步调用
    编译hadoop2.2.0源码时报错
    项目中登陆页面的显示
    VB读写Excel
    C socket demo
    java设计模式----单例模式
    poj3358数论(欧拉定理)
    Java实现 蓝桥杯VIP 算法训练 排列问题
  • 原文地址:https://www.cnblogs.com/juking/p/9853612.html
Copyright © 2011-2022 走看看