转载请注明出处️

作者:测试蔡坨坨

原文链接:caituotuo.top/9a093c88.html


你好,我是测试蔡坨坨。

随着行业内卷越来越严重,自动化测试已成为测试工程师的必备技能,谈及自动化测试肯定少不了编程,说到编程肯定离不开集成开发工具,比如:IntelliJ IDEA可以帮助我们快速构建Maven项目、springboot项目,PyCharm可以帮助我们快速构建Django项目、Flask项目。那么有没有一款专门给测试同学用的集成开发工具呢?帮助我们快速构建自动化测试项目?

有的,今天我们就来介绍JetBrains的新产品Aqua,它是一款专门为自动化测试打造的集成开发工具,可以快速构建自动化测试项目,包括UI自动化测试、接口自动化测试、单元测试。

Aqua是啥

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

JetBrains Aqua,a powerful IDE for test automation.

一款强大的自动化测试开发工具。

Aqua:英 /ˈækwə/;美 /ˈɑːkwə/ (不是阿瓜哦,大概就是qa反过来念

目前只是preview预览版本,还没有正式发布,所以在使用的时候会有一些Bug。

它有两种使用方式,一个是IDE版,一个是插件版本(支持在IntelliJ IDEA、PyCharm、WebStorm等工具中通过插件的方式安装使用,但只支持部分版本)。

由于插件还不太成熟,因此本篇将使用IDE的方式进行演示。

Aqua有啥用

Develop all kinds of automated tests with JetBrains Aqua.

主要是用于开发各种自动化测试。

  • UI自动化测试

    • 带有CSS和XPath定位器的嵌入式Web检查器

      我们可以直接在Aqua上打开内嵌的浏览器,并使用元素检查器定位元素,还可以将定位到的元素CSS路径和XPath路径直接添加到代码中,从而省去浏览器和编辑器来回切换的麻烦,通过Ctrl+单击鼠标左键代码中元素位置的路径还可以快速在内嵌的浏览器中反向定位出来。

    • 针对流行框架的增强语法高亮显示、导航和代码补全

      比如:对Selenium常用的元素定位方式进行封装($()用于cssSelector定位、$x用于XPath定位……)和API进行了封装,方便我们直接调用即可使用,并且有代码补全功能。

    • 零配置项目向导和可自定义的文件模板

      快速构建自动化测试项目,比如Selenium Project,并且自动生成分层结构。

  • 接口自动化测试

    • 功能强大的代码驱动型HTTP客户端

      这个应该其他开发工具也是支持的,新建xxx.http文件,然后填写接口信息即可完成调用。

    • OpenAPI(Swagger)支持

  • 单元测试

    • 在源代码与测试之间导航

    • 每个测试的统计数据以及一次运行多个测试的能力

    • 代码覆盖率分析

      比如Jacoco

Selenium项目

新建一个 Selenium Web UI 自动化测试项目。

New Project - Selenium - Java(由于目前不支持Python语言,所以这里以Java为例进行演示) - Next

选择Selenium4版本 - Create

新建项目后可以看到Aqua已经帮我们构建了一个现成的 Selenium Web UI 自动化测试项目。

新建项目后,我们可以看到其中还提供了一些示例代码,主要是基于Selenium做的一些测试代码,比如下面这段代码主要实现:

  • 打开网站https://www.jetbrains.com/
  • 找到搜索输入框并输入Selenium

运行时报错,提示信息为“类文件具有错误的版本 55.0,应为 52.0”,是因为项目所用到的依赖需要用到55.0版本,而55.0版本刚好对应JDK11,而当前项目的JDK是1.8,版本过低,因此需要下载并安装JDK11就可以正常运行了。

选择JDK11之后正常运行:

总结

在我看来,Aqua比较大的亮点就是可以帮助我们快速构建自动化测试项目,以及内嵌的浏览器方便我们边定位元素边进行代码的编写,其他的功能好像在别的集成开发工具上也能实现,由于目前还是预览版本,Bug还是比较多,关于Aqua工具更多的内容,等正式版发布我们再来讨论吧。

喜欢尝鲜的小伙伴可以去试试了。

JetBrains新产品Aqua——自动化测试开发工具(抢鲜体验)的更多相关文章

  1. 微信小程序开发平台新功能「云开发」快速上手体验

    微信小程序开发平台刚刚开放了一个全新的功能:云开发. 简单地说就是将开发人员搭建微信小程序后端的成本再次降低,此文刚好在此产品公测时,来快速上手看看都有哪些方便开发者的功能更新. 微信小程序一直保持一 ...

  2. AngularJS最理想开发工具WebStorm

    http://blog.fens.me/angularjs-webstorm-ide/ Angularjs插件下载地址:http://plugins.jetbrains.com/plugin/6971 ...

  3. 黄聪:AngularJS最理想开发工具WebStorm

    Aug 29, 2013 Tags: angularangular.jsangularjswebstorm Comments: 23 Comments AngularJS最理想开发工具WebStorm ...

  4. 2015 GOOGLE I/O大会看点总结:新的开发工具及云端测试工具

        http://ask.android-studio.org/?/article/48 尽管凌晨开始的主题演讲略显晦涩并继承了谷歌一贯的东一句西一句想起啥说啥的混乱风格,但期待用技术改变世界的技 ...

  5. 新成员!Visual Studio Code --跨平台的开发工具(支持OSX, Linux 和 Windows)

    原文出处:新成员!Visual Studio Code --跨平台的开发工具(支持OSX, Linux 和 Windows) 这是我的文章备份  http://www.dotblogs.com.tw/ ...

  6. Android群英传》读书笔记 (1) 第一章 Android体系与系统架构 + 第二章 Android开发工具新接触

    第一章 Android体系与系统架构 1.Dalvik 和 ARTDalvik好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.ART好比是一辆组装好了的自行车,装好就可以骑了. ...

  7. JetBrains IntelliJ IDEA for Mac 15.0 破解版 – Mac 上强大的 Java 集成开发工具

    应网友要求更新. IntelliJ IDEA 是最强大的 Java IDE 之一,由知名的Jetbrainsg公司出品,最新版本增加了大量强大易用的特性,比如 Java 8 的Lambda 表达式调试 ...

  8. Android群英传笔记——第二章:Android开发工具新接触

    Android群英传笔记--第二章:Android开发工具新接触 其实这一章并没什么可讲的,前面的安装Android studio的我们可以直接跳过,如果有兴趣的,可以去看看Google主推-Andr ...

  9. 【视频】使用fiddler开发工具进行新架构页面本地调试

    [视频]使用fiddler开发工具进行新架构页面本地调试,视频没录制好,有些部分比较模糊...

随机推荐

  1. vs完整编译Opencv+contrib

    准备条件 Opencv源码(以4.3.0为例) OpenContrib源码(以4.3.0)为例 最新版的CMake GUI CMake 生成项目 设置source code 和生成的build文件夹 ...

  2. win10算hash值,md5,sha256等,无需额外下载工具

    # windows_cmd certutil -hashfile .\文件名 SHA256 可选哈希算法:md2/md4/md5/sha1/sha256/sha384/sha512

  3. WSUS连接错误需要重置服务器

    在WSUS完成部署后,总是遇到控制台错误,提示需要重置服务器节点.https://www.cnblogs.com/qishine/p/12727982.html错误:连接错误尝试连接WSUS服务器时出 ...

  4. PHP 使用AES加密,并扩展失效时间检测

    /** * 具有时间校验的AES加密 * @param string $string 要处理的字符串 * @param int $timeout 超时时间,单位秒 * @param string $t ...

  5. 第六章:Django 综合篇 - 14:Django 日志

    Django使用Python内置的logging模块实现它自己的日志系统. 如果你没有使用过logging模块,请参考Python教程中的相关章节. 直达链接<logging模块详解>. ...

  6. 4.Ceph 基础篇 - 对象存储使用

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247485256&idx=1&sn=39e07215 ...

  7. PostgreSQL 模式(SCHEMA)

    PostgreSQL 模式(SCHEMA)可以看着是一个表的集合. 一个模式可以包含视图.索引.据类型.函数和操作符等. 相同的对象名称可以被用于不同的模式中而不会出现冲突,例如 schema1 和 ...

  8. mongodb停止关闭服务

    停止服务的方式有两种:快速关闭和标准关闭,下面依次说明: (一)快速关闭方法(快速,简单,数据可能会出错) 目标:通过系统的kill命令直接杀死进程: 杀完要检查一下,避免有的没有杀掉. #通过进程编 ...

  9. [Android开发学iOS系列] ViewController

    iOS ViewController 写UIKit的代码, ViewController是离不开的. 本文试图讲讲它的基本知识, 不是很深入且有点杂乱, 供初级选手和跨技术栈同学参考. What is ...

  10. 【pytest官方文档】解读- 插件开发之hooks 函数(钩子)

    上一节讲到如何安装和使用第三方插件,用法很简单.接下来解读下如何自己开发pytest插件. 但是,由于一个插件包含一个或多个钩子函数开发而来,所以在具体开发插件之前还需要先学习hooks函数. 一.什 ...