DrissionPage WEB 自动化测试集成工具

代码狂魔 2021-04-14 18:34:36 ⋅ 1586 阅读

软件简介

DrissionPage,即 driver 和 session 的合体,是一个基于 python 的 Web 自动化操作集成工具。

requests 爬虫面对要登录的网站时,要分析数据包、JS 源码,构造复杂的请求,往往还要应付验证码、JS 混淆、签名参数等反爬手段,门槛较高。若数据是由 JS 计算生成的,还须重现计算过程,体验不好,开发效率不高。使用 selenium,则可以很大程度上绕过这些坑,但 selenium 效率不高。

因此,这个库将 selenium 和 requests 合二为一,不同需要时切换相应模式,并提供一种人性化的使用方法,提高开发和运行效率。除了合并两者,本库还以网页为单位封装了常用功能,简化了 selenium 的操作和语句,在用于网页自动化操作时,减少考虑细节,专注功能实现,使用更方便。

特性

  • 以简洁的代码为第一追求。
  • 允许在 selenium 和 requests 间无缝切换,共享 session。
  • 两种模式提供一致的 API,使用体验一致。
  • 人性化的页面元素操作方式,减轻页面分析工作量和编码量。
  • 对常用功能作了整合和优化,更符合实际使用需要。
  • 兼容 selenium 代码,便于项目迁移。
  • 使用 POM 模式封装,便于扩展。
  • 统一的文件下载方法,弥补浏览器下载的不足。
  • 简易的配置方法,摆脱繁琐的浏览器配置。

项目结构



全部评论: 0

    我有话说:

    最全Mac工具

      MacTool Mac 开源免费工具汇总, 只罗列开源好用的。更全列表请参考awesome-mac 必备 Homebrew - 体验通过命令行安装 Mac 软件的工具(大部分是

    工具集001

      1.  Google项目管理工具 Tables   2. 终端 taskwarrior --- TODO List Taskwarrior is

    京东技术:Web自动化测试 | 充分利用浏览器记录的信息

    Web页面的展示依托于浏览器,当用户请求一个URL的时候,浏览器会记录下从HTTP请求到页面渲染成功这个过程的所有信息。

    京东技术:APP的UI自动化测试框架及平台化探索

    UI自动化测试,即通过模拟手动操作用户UI界面的方式,以代码方式实现自动操作和验证的一种自动化测试手段。

    数据生成工具 ZenData 发布 1.5 版本,新增 CSV 和 Excel 输出格式,字段定义支持表达式

    随着DevOps的日益流行,越来越多的团队开始关注持续集成和持续交付。在这种大背景下,自动化测试就越来越重要了。那么问题来了,如何能够实现大规模、工程化的自动化测试呢?这里面会涉及到诸多的问题,比如

    精品推荐:Docker与自动化测试及其测试实践

    Docker 本身并不会直接加速测试执行。在串行执行测试时,在容器中执行测试反而会带来约 5% 左右的性能衰减。

    工具集002

      文件对比 https://www.diffchecker.com/excel-diff 快速找出类似文件的不同之处。  

    还在为朋友圈积赞苦恼么

    ---- https://akarin.dev/We...

    「小米技术」Soar一键优化工具--SQL优化和改写的自动化工具

    SOAR(SQL Optimizer And Rewriter)是一个对SQL进行优化和改写的自动化工具。由小米人工智能与云平台的数据库团队开发与维护。

    推荐一款 RabbitMQTest 性能测试工具

    软件简介 RabbitMQTest 用于 RabbitMQ 性能测试,可提供对单个队列写入,消费以及对多个队列进行同时读写操作的测试. 可配置连接数,通道数 GitHub

    京东技术:单元测试高效之路——持续集成

    持续集成的概念与好处互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称CI)。

    单元测试增强工具TestableMock 让Mock返璞归真

    简介 阿里巴巴研发效能团队开源的Java单元测试增强工具,换种思路写Mock,让单元测试更简单。 无需初始化,不挑测试框架,甭管要换的方法是被测类的私有方法、静态方法还是其他任何类的成员方法,也甭管

    TeamCity 2020.2.3 发布,持续集成工具

    TeamCity 2020.2.2 发布了。TeamCity 是一款功能强大的持续集成工具,覆盖服务器端和客户端。它提供一系列特性可以让团队快速实现持续集成:IDE 工具集成、各种消息通知

    TeamCity 2021.1 EAP2 发布,持续集成工具

    TeamCity 2021.1 EAP2 发布了。TeamCity 是一款功能强大的持续集成工具,覆盖服务器端和客户端。它提供一系列特性可以让团队快速实现持续集成:IDE 工具集成、各种消息通知

    TeamCity 2020.2.4 发布,持续集成工具

    TeamCity 2020.2.4 发布了。TeamCity 是一款功能强大的持续集成工具,覆盖服务器端和客户端。它提供一系列特性可以让团队快速实现持续集成:IDE 工具集成、各种消息通知

    Jenkins 2.276 发布,Java 编写的持续集成工具

    Jenkins 是一款由 Java 编写的开源的持续集成工具。Jenkins 提供了软件开发的持续集成服务。它运行在 Servlet 容器中(例如 Apache Tomcat)。它支持软件配置管理

    Jenkins 2.285 发布,Java 编写的持续集成工具

    Jenkins 是一款由 Java 编写的开源的持续集成工具。Jenkins 提供了软件开发的持续集成服务。它运行在 Servlet 容器中(例如 Apache Tomcat)。它支持软件配置管理

    Jenkins 2.288 发布,Java 编写的持续集成工具

    Jenkins 是一款由 Java 编写的开源的持续集成工具。Jenkins 提供了软件开发的持续集成服务。它运行在 Servlet 容器中(例如 Apache Tomcat)。它支持软件配置管理

    TestableMock v0.6.0 发布,新增测试参数快速构造工具

    项目介绍 TestableMock是一款由阿里效能团队开源的Java单元测试增强工具,提供四项具有针对性的辅助能力: 快速Mock任意调用:解决传统Mock工具使用繁琐的问题 访问被测类私有成员