zoukankan      html  css  js  c++  java
  • Splinter 的认识和基础应用

      Splinter 是一个使用Python开发的开源web应用测试程序,它可以帮助我们实现自动浏览站点和与其进行交互。它是依赖于其它python插件或拓展进行的,所以我们使用它之前需要安装一系列的依赖包。

    依赖包
    Splinter0.7.2依赖以下包:
    Selenium(版本>=2.44.0)
    Django(版本>=1.5.8,<1.7)
    Flask(版本>=0.10)
    lxml(版本>=2.3.6)
    zope.testbrowser(版本>=4.0.4)
    cssselect

      当我们控制浏览器时还需要下载一些浏览器的driver,并要将这些driver的路径添加到环境变量中,我们才能随便的使用它们。

      splinter常用的一些命令

    定位元素:
    browser.find_by_css('h1')
    browser.find_by_tag('h1')
    browser.find_by_name('name')
    browser.find_by_id('firstheader')
    browser.find_by_value('fquery')
    browser.find_by_xpath('//h1')
    browser.find_element_by_XXX() # element 表示定位的是单个
    browser.find_elements_by_XXX() # elements 表示定位的是多个,不能直接进行操作

    html控件应用:
    test单行文本框、testarea多行文本框:用于填充事件
    select下拉框:用于选择事件
    radio单选框:用于单选事件
    button按钮:用于点击事件
    checkbox复选框:用于复选事件
    a超链接:用于跳转事件
    
    
    常用的操作命令:
    click   点击
    submit 提交表单 fill 一次性填充 choose 单选 type 键入式填充
    clear 清除元素的内容
    send_keys 在元素上模拟按键输入 mouse_over 鼠标指针位于元素上方的事件 mouse_out 鼠标指针位于元素下方的事件

    使用事例:

    from splinter import Browser
    
    b = Browser('chrome')   #使用谷歌浏览器,如果省略了传入的字符串,则默认使用firefox
    url = "http://www.baidu.com"  #控制浏览器进入的站点
    b.visit(url)
    b.fill('q', 'splinter - python acceptance testing for web applications')   #使用splinter向站点中填充一个内容
    
        button = browser.find_by_name('btnG')   #获取站点中的按钮
    
        button.click()   #单击按钮提交填充的数据
        if browser.is_text_present('splinter.readthedocs.org'):   #判断是否存在这个字符串
            print "Yes, the official website was found!"
        else:
            print "No, it wasn't found... We need to improve our SEO techniques"
    from splinter.browser import Browser
    from time import sleep
    
    b = Browser()
    b.visit("http://www.baidu.com")
    
    print(u'稍后进行查找')
    time.sleep(8)
    
    b.find_by_id('kw').fill("splinter")
    b.find_by_id('su').click()
    
    print(u'查找结束')
    time.sleep(10)
    
    b.quit()
  • 相关阅读:
    MyEclipse使用总结——MyEclipse10安装SVN插件
    SVN的安装和配置
    Git
    myeclipse 怎么安装与激活
    jQuery
    sql server 2008
    原问题:身份证为什么只有15位
    QTP10破解方法及mgn-mqt82.exe下载
    WARNING [Project: :app] To shrink resources you must also enable ProGuard
    your local changes would be overwritten by merge. commit stash or revert them to proceed. view them
  • 原文地址:https://www.cnblogs.com/lovele-/p/9235592.html
Copyright © 2011-2022 走看看