Web 自动化测试提速利器:Aqua 的 Web Inspector (检查器)使用详解

Web 自动化测试提速利器:Aqua 的 Web Inspector (检查器)使用详解

    • 前言
    • 简介
    • 一、安装
    • 二、Web Inspector 的使用
      • 2.1 获取元素定位器(Locators)
      • 2.2 将定位器添加到代码
      • 2.3 验证定位器
      • 2.4 处理 Frames (框架)
    • 总结

前言

JetBrains 的 Aqua IDE 提供强大的 Web Inspector 工具,帮助测试人员高效地定位网页元素、生成测试代码,并最终提升 Web 测试的效率。本文将深入探讨 Aqua Web Inspector 的常用功能,助你掌握这个强大的工具。

简介

  • Aqua 是第一款专为测试自动化而创建的 IDE;
  • 支持多种 WEB 自动化测试框架,包括: Selenium、Cypress 和 Playwright;
  • 支持多语言,包括:Java、Python、JavaScript、TypeScript、Kotlin 和 SQL;
  • 开箱即用,直接进行测试,无需安装和配置大量插件;
  • 拥有独特的功能集,能够满足自动化测试工程师的日常需求;
  • Web Inspector 的工作方式类似于内置浏览器,允许捕获任何页面元素,无需切换到其他工具;
  • 还有用于 API 测试的 HTTP 客户端,以及与数据库、Docker 和版本控制的集成。

官网:https://www.jetbrains.com.cn/aqua/

在这里插入图片描述

一、安装

Aqua IDE 下载链接:https://www.jetbrains.com.cn/aqua/download/

下载完成后,安装Aqua IDE,具体安装步骤在这里不再赘述。

  1. 打开Aqua IDE,新建项目;
    在这里插入图片描述在这里插入图片描述
  2. 等待相关依赖自动安装完成;
    在这里插入图片描述

二、Web Inspector 的使用

2.1 获取元素定位器(Locators)

Web Inspector 的核心功能之一就是方便地获取网页元素的定位器,这对于编写自动化测试至关重要。下面我们来学习打开 Web Inspector 并定位元素:

  • 点击 IDE 右侧的 web检查器 icon: 打开 Web Inspector。
    在这里插入图片描述

  • 直接指定 URL: 在 Web Inspector 的地址栏中输入 URL 并回车,即可打开目标网站。
    在这里插入图片描述

打开网页后,就可以开始选择网页元素了。Aqua 提供了以下几种方式:

  • 点击选择元素按钮: 在网页上直接选择目标元素,这是最直观的操作方式。
    在这里插入图片描述

  • 输入定位器/子字符串: 在 Locators Evaluator 部分的搜索框中输入定位器或其子字符串,Aqua 会自动完成并提示匹配的元素。这对于已知部分定位器的元素查找非常高效。
    在这里插入图片描述

  • 在 Page Structure 中选择元素: Page Structure 部分会以树形结构展示网页的 DOM 结构,你可以方便地在其中浏览和选择元素。这特别适用于在已选元素附近查找其他元素。
    在这里插入图片描述

选择元素后,Aqua 会自动生成该元素的唯一标识符,确保每个定位器都指向页面上的特定元素。
在这里插入图片描述

2.2 将定位器添加到代码

获得元素定位器之后,下一步就是将其添加到你的测试代码中。Aqua 提供了多种方式:

  • 复制到剪贴板: 点击复制按钮,将定位器复制到剪贴板,然后手动粘贴到代码中。
    在这里插入图片描述

  • 直接添加到代码: 点击 Locators Evaluator 部分的 按钮,将定位器直接添加到代码中。
    在这里插入图片描述

  • 使用特定选择器添加元素: 如果你想使用特定的选择器(例如 Text、Tag with classes、CSS等)来添加元素,点击下拉按钮,然后从列表中选择所需的选择器。Aqua 会生成框架和语言特定的表达式,将选定的元素添加到你的代码中。
    在这里插入图片描述

2.3 验证定位器

验证定位器是否有效, Aqua 提供了以下方法:

  • 从代码编辑器验证: 在代码编辑器中,点击定位器左边的图标,这个图标会展示匹配的元素数量,如果定位器有效,Web Inspector 工具窗口将打开,并且相应的元素将在 Web Inspector 和 Page Structure 部分中突出显示。
    在这里插入图片描述

2.4 处理 Frames (框架)

Aqua 能够很好地支持选择 Frame 中的元素,并生成 Frame 切换代码。

  • 自动切换到 Frame: 当你选择不在根 Frame 中的元素时,Aqua 会自动切换到包含该元素的 Frame。Page Structure 也会更新以反映 Frame 的内容,方便在 Frame 内导航。
  • 在 Frames 之间切换: 当你切换到不同的 Frame 时,会显示一个面包屑导航,表示当前所在的 Frame。你可以双击顶部的 Frame 按钮,切换回根 Frame。你也可以点击该按钮并从列表中选择一个现有的 Frame 进行切换。

总结

Aqua Web Inspector 提供了一套完整的功能,可以显著提升 Web 测试的效率。通过本文的介绍,你已经掌握了如何使用 Web Inspector 的常用功能。使用这些功能,可以极大地提高你的 Web 测试效率和代码质量。希望本文能够帮助你更好地利用 Aqua Web Inspector,编写更稳定、可靠的 Web 测试脚本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/973541.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IDEA中查询Maven项目的依赖树

在Maven项目中,查看项目的依赖树是一个常见的需求,特别是当你需要了解项目中直接或间接依赖了哪些库及其版本时。你可以通过命令行使用Maven的dependency:tree插件来做到这一点。这个命令会列出项目中所有依赖的树状结构。 打开idea项目的终端&#xff…

大数据技术之HBase操作归纳

HBase基本命令总结表(实际操作方式) 进入Hbase:hbase shell 方式一:命令行窗口来操作HBase 1.通用性命令 version 版本信息 status 查看集群当前状态 whoami 查看登入者身份 help 帮助2.HBase DDL操作(对象级操作) 2.1、namespace命名空间(相当…

Java 大视界 -- 国际竞争与合作:Java 大数据在全球市场的机遇与挑战(94)

💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…

1.16作业

1 进注册界面,第一次以为抓包选把isadmin ture了就好 第二次尝试,勾选is admin,有需要invitecode(经典) 2 p r**5 r**4 - r**3 r**2 - r 2023 q r**5 - r**4 r**3 - r**2 r 2023 n 25066797992811602609904…

MybatisPlus教程-从入门到进阶

前言 首先它是国产的,所以直接用官网的简介。 简介 MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 特性 无侵入:只做增强不做改变,引入它不会对现有…

算法1-4 数楼梯

题目描述 楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶。 编一个程序,计算共有多少种不同的走法。 输入格式 一个数字,楼梯数。 输出格式 输出走的方式总数。 输入输出样例 输入 #1 4 输出 #1 5 说明/提示 对于…

DigitalOcean H200 GPU裸机服务器上线!可更好支持DeepSeek满血版

在 DigitalOcean,我们始终致力于为开发者、初创企业和人工智能驱动型公司提供更便捷的高性能计算资源,助力其业务扩展。今日,DigitalOcean 隆重推出基于 NVIDIA HGX H200 AI 超级计算平台的裸机服务器,专为高性能AI工作负载而生。…

企业组网IP规划与先关协议分析

目录 一、IP编址 1、IP地址组成 2、IP地址表达 3、IP 地址分类 4、IP地址类型 5、IP网络通信 6、子网掩码 7、默认子网掩码 8、IP 地址规划 9、有类IP编制缺陷 10、VLSM 11、变长子网掩码案例 12、网关 13、无类域间路由 一、IP编址 网络层位于数据链路层与传输层之间…

Python之装饰器三 踩坑(带参数,不带参数,两者都带参数)

文章目录 前言一、装饰器不带参数(但是装修器内部的函数又需要参数)二、装饰器带参数(但是被装饰的函数不带参数)三、装饰器带参数(并且被装饰的函数也带参数)总结前言 Python装饰器里面遇到的踩坑点,以及自己的理解。 一、装饰器不带参数(但是装修器内部的函数又需要…

蓝桥杯好数

样例输入: 24 输出:7 输入:2024 输出: 150 思路:本题朴素方法的时间复杂度是O(n * log10(n)) ,不超时。主要考察能否逐位取数,注意细节pi,这样不会改变i,否则会导致循环错误。 #in…

人工智能之自动驾驶技术体系

自动驾驶技术体系 自动驾驶技术是人工智能在交通领域的重要应用,旨在通过计算机视觉、传感器融合、路径规划等技术实现车辆的自主驾驶。自动驾驶不仅能够提高交通效率,还能减少交通事故和环境污染。本文将深入探讨自动驾驶的技术体系,包括感…

Vue 实现通过URL浏览器本地下载 PDF 和 图片

1、代码实现如下: 根据自己场景判断 PDF 和 图片,下载功能可按下面代码逻辑执行 const downloadFile async (item: any) > {try {let blobUrl: any;// PDF本地下载if (item.format pdf) {const response await fetch(item.url); // URL传递进入i…

Microsoft 365 Copilot中使用人数最多的是哪些应用

今天在浏览Microsoft 365 admin center时发现,copilot会自动整理过去30天内所有用户使用copilot的概况: 直接把这个图丢给copilot让它去分析,结果如下: 总用户情况 总用户数在各应用中均为 561 人,说明此次统计的样本…

Spring Boot (maven)分页4.0.1版本 专业版- 改

前言: 通过实践而发现真理,又通过实践而证实真理和发展真理。从感性认识而能动地发展到理性认识,又从理性认识而能动地指导革命实践,改造主观世界和客观世界。实践、认识、再实践、再认识,这种形式,循环往…

装修流程图: 装修前准备 → 设计阶段 → 施工阶段 → 安装阶段 → 收尾阶段 → 入住

文章目录 引言I 毛坯房装修的全流程**1. 装修前准备****1.1 确定装修预算****1.2 选择装修方式****1.3 选择装修公司****1.4 办理装修手续****2. 设计阶段****2.1 量房****2.2 设计方案****2.3 确认方案****3. 施工阶段****3.1 主体拆改****3.2 水电改造****3.3 防水工程****3.…

若依-@Excel新增注解numberFormat

Excel注解中原本的scale会四舍五入小数,导致进度丢失 想要的效果 显示的时候保留两个小数真正的数值是保留之前的数值 还原过程 若以中有一個專門的工具类,用来处理excel的 找到EXCEL导出方法exportExcel()找到writeSheet,写表格的方法找到填充数据的方法…

鸿蒙5.0实战案例:基于自定义注解和代码生成实现路由框架

往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录) ✏️ 鸿蒙(HarmonyOS)北向开发知识点记录~ ✏️ 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ ✏️ 鸿蒙应用开发与鸿蒙系统开发哪个更有前景&#…

让浏览器AI起来:基于大模型Agent的浏览器自动化工具

最近有个非常火的项目,利用大模型Agent驱动浏览器完成各种操作,如网页搜索、爬虫分析、机票酒店预定、股票监控等,号称全面替代所有在浏览器上的操作,试用方式还是比较简单的,以下将进行简单介绍。 快速开始 通过pip安装: pip install browser-use安装web自动化框架:…

模电知识点总结(6)

1.选取频率高于1000Hz的信号时,可选用高通滤波器;抑制50Hz的交流干扰时,可选用带阻滤波器如果希望抑制500Hz以下的信号,可选用高通滤波器。 2.有用信号频率高于1000Hz,可选用高通滤波器;希望抑制50Hz的交流…

MyBatis:动态SQL高级标签使用方法指南

一、引言 目前互联网大厂在搭建后端Java服务时,常使用Springboot搭配Mybatis/Mybatis-plus的框架。Mybatis/Mybatis-plus之所以能成为当前国内主流的持久层框架,与其本身的优点有关:支持定制动态 SQL、存储过程及高级映射,简化数…