美文网首页python
初学splinter

初学splinter

作者: JemmyChen | 来源:发表于2017-12-22 22:13 被阅读0次

    简介

    ​ Splinter是一个使用Python开发的开源Web应用自动化测试工具,它可以帮助你实现自动浏览站点和与其交互。

    特性

    1. 可以模拟浏览器行为,访问指定的URL,并且可以指定不同的浏览器类型。比如firefox或者chrome等。不同的浏览器只要在本地安装对应的驱动,就可以在代码中通过名称指定来访问。
    2. 支持cookie操作,可以很方便的添加和删除cookie;
    3. 支持模拟鼠标的动作,比如滑动到某个按钮上,焦点离开某个按钮等等,对于带有动态提示的页面,如搜索引擎的关键字输入框的动态提示,可以非常方便的测试。
    4. 支持模拟键盘的输入操作,对input等控件的输入可以模拟用户的type过程。
    5. 支持直接运行js或者调用页面的js。
    6. 支持模拟上传文件。
    7. 对radio和checkbox有专门的api支持,非常方便;
    8. 支持快速的获取页面的元素或者判断是否存在文本,用于开发判断页面提示信息是否准确非常方便。
    9. 最重要的,splinter的API非常简单,配合官方的文档学习成本几乎是0,当然你得懂一些python语法。如果你比较了解js和css,你可能会像喜欢jquery一样喜欢它;

    应用场景

    • 自动化表单处理
      • 复杂的表单数据提交
      • 表单安全验证
    • 自动化流程处理
      • 流程状态验证
      • 数据断言验证

    常用元素定位方法

    • 唯一性定位(id定位):browser.find_by_id('id')
    • 控件名定位(name定位):browser.find_by_name('name')
    • 样式型定位(css定位):browser.find_by_css('.h1')
    • 值定位(value定位):browser.find_by_value('value')
    • 内容型定位(text定位):browser.find_by_text('text')
    • 超链接定位(link定位):browser.find_link_by_href('url')
    • 路径式定位(xpath定位):browser.find_by_xpath('//path')
    • 标签定位(tag定位):browser.find_by_tag('tag')

    常用操作事件

    • 点击事件:click
    • 填充事件:fill
    • 下拉框选择事件:select
    • 单选框选择事件:choose
    • 复选框选择事件:check/uncheck
    • 鼠标事件:mouse_over/mouse_out
    • 键入式填充事件,类似于MouseDown和MouseUp事件:type

    第一个Splinter脚本

    import splinter
    
    if __name__ == "__main":
      #创建浏览器,参数为浏览器名称
      browser = splinter.Browser('chrome')
      #访问百度
      browser.visit("https://www.baidu.com")
      #百度首页的输入框name为'wd',实现自动输入。第一个参数为组件的name,第二个参数为内容
      browser.fill('wd','马化腾')
      #寻找id为'su'的组件,并执行点击事件
      browser.find_by_id('su').click()
    

    相关文章

      网友评论

        本文标题:初学splinter

        本文链接:https://www.haomeiwen.com/subject/aozxgxtx.html