1、前言

自动化测试工具在现代软件开发中扮演着至关重要的角色。它们不仅能够提高测试效率,减少人为错误,还能够帮助开发团队更快速地交付高质量的软件产品。

本文将介绍一款简洁而强大的自动化测试工具-DrissionPage

2、简介

DrissionPage是一款基于Python的高效网页自动化工具
它不仅能够操控浏览器,还能发送和接收数据包,并将这两种功能完美融合。

既保留了浏览器自动化的便捷性,又具备了requests库的高效处理能力。

功能强大,集成了众多人性化设计和实用功能。

语法简明优雅,代码简洁,非常适合初学者使用。

特性:

无需特定的WebDriver驱动,免去下载不同版本驱动的烦恼。

运行效率更高。

支持跨iframe元素定位,无需频繁切换,简化操作流程。

将iframe当作常规元素处理,直接在内部进行元素搜索,逻辑更加清晰。

能够同时操控浏览器内多个标签页,即便标签页处于非活跃状态也无需进行切换。

可直接利用浏览器缓存保存图片,避免使用图形界面进行手动另存。

支持对整个网页进行截图,包括视口之外的内容(需浏览器版本90以上)。

能够处理非open状态的shadow-root元素。

安装:

pip install DrissionPage

3、快速上手

1、操作浏览器

示例代码:

from DrissionPage import ChromiumPage

# 创建页面对象,并启动或接管浏览器
page = ChromiumPage()
# 跳转到百度首页
page.get('https://www.baidu.com/')

# 定位到搜索框
ele = page.ele('#kw')
# 输入数据
ele.input('自动化测试')
# 点击百度一下
page.ele('@value=百度一下').click()

    2、收发数据包

    示例代码:

    from DrissionPage import SessionPage
    
    # 创建页面对象
    page = SessionPage()
    
    # 访问作者博客
    page.get('https://www.cnblogs.com/alltests')
    # 获取所有<a>元素列表
    links = page.eles('.postTitle2 vertical-middle')
    # 遍历所有<a>元素
    for link in links:
        # 打印链接信息
        print(link.text, link.link)
    

      打印结果:

      图片

      3、模式切换(操作浏览器、收发数据包)

      示例代码:

      from DrissionPage import WebPage
      
      # 创建页面对象
      page = WebPage()
      # 访问作者博客
      page.get('https://www.cnblogs.com/alltests')
      # 点击首页按钮
      page('#blog_nav_myhome').click()
      # 等待页面加载
      page.wait.load_start()
      # 切换到收发数据包模式
      page.change_mode()
      # 获取所有<a>元素列表
      links = page.eles('.postTitle2 vertical-middle')
      # 遍历所有<a>元素
      for link in links:
          # 打印链接信息
          print(link.text, link.link)
      

        运行结果:

        浏览器先打开作者博客,点击首页按钮,之后切换收发数据包模式,控制台打印链接信息。

         

         感谢每一个认真阅读我文章的人!!!

        作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

        软件测试面试文档

        我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

         

                  视频文档获取方式:
        这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

        Logo

        一站式 AI 云服务平台

        更多推荐