JetBrains新產品Aqua——自動化測試開發工具(搶鮮體驗)

2022-11-13 06:00:39

轉載請註明出處❤️

作者:測試蔡坨坨

原文連結: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工具更多的內容,等正式版釋出我們再來討論吧。

喜歡嚐鮮的小夥伴可以去試試了。