因為眼睛不會說謊 - 使用 Applitools Eyes 進行視覺測試

已發表: 2021-08-17

回歸測試確保引入軟件的任何更改都不會破壞以前運行良好的任何內容。 可視化回歸測試確保任何 GUI 問題都不會因為所做的更改而出現。 應用程序應該仍然看起來像在引入修改之前的樣子。 視覺回歸測試工具捕獲當前 UI 的屏幕截圖並將它們與原始屏幕截圖進行比較。 它著眼於歷史兩極,並確認即使在修改之後,網頁仍然可以在各種瀏覽器中按預期呈現。 Applitools Eyes 是市場上最受歡迎的視覺測試工具之一,由其專有的認知視覺技術提供支持。

Applitools 開發了一種基於雲的軟件測試工具 Applitools Eyes,它可以自動驗證任何 Web、移動和本地應用程序的所有視覺方面。 這些驗證類似於手動測試人員所做的驗證。 Applitools 技術自動驗證 UI 佈局、內容和外觀的正確性,並使您能夠自動化測試,而這些測試只能在沒有它的情況下手動完成。 它可以在任何給定的瀏覽器、設備、操作系統和編程語言上,在任何屏幕分辨率和外形尺寸上測試應用程序。

視覺測試

Applitools Eyes 系統概述

各種測試環境與 Applitools 的各種 Eyes 組件交互以實現可視化 UI 測試。 該系統由以下組件組成:

  • 被測應用程序 (AUT)。
  • 為 AUT 運行並驗證其準確性的測試套件。
  • 在測試套件代碼中調用 SDK 以觸發屏幕截圖捕獲和視覺檢查。
  • 像 Selenium 或 Appium 這樣的應用程序驅動程序提供了一個框架來構建可以發送到 AUT 的測試套件。 它還使用這些來捕獲屏幕截圖。
  • 服務器接收並存儲從 SDK 發送的屏幕截圖。 它將它們與存儲的基線圖像進行比較並報告任何差異。
  • Eyes Test Manager 為用戶提供他們可以查看的測試結果,並幫助用戶報告錯誤和管理基線圖像。

下面是組件如何交互以運行測試的示例,允許測試團隊查看和管理測試結果。

應用工具

信用:應用工具

第 1 步:測試團隊運行測試套件。 代碼通常針對不同的應用程序狀態重複以下步驟。

STEP 2.1:使用 Selenium 或 Appium 等驅動程序,模擬鼠標點擊、鍵盤輸入等用戶操作。

2.2 步:隨之調用 Eyes SDK API 以同時執行視覺檢查點。

步驟 2.2.a: Eyes SDK 使用驅動程序來收集屏幕截圖。

步驟 2.2.b:之後 Eyes SDK 將收集到的圖像發送到 Eyes 服務器。 在這裡,圖像和其他檢查點圖像與之前存儲在服務器上的基線圖像進行比較。

第 3 步:處理完測試中的圖像後,Eyes Server 會提供有關觀察到的任何差異的信息。 除此之外,還提供了一個可以查看結果的 Eyes 網站的鏈接。

第 4 步:測試團隊使用 Eyes Test Manager 查看測試結果、更新基線、報告錯誤和註釋需要特殊處理的區域。 查看所有結果後,測試團隊保存基線。 這將成為下一次測試運行比較的基礎。

Applitools 的 SDK 支持廣泛的流行 - Web、移動和桌面測試自動化框架、各種應用程序驅動程序基礎設施、編程語言和所有常見平台、瀏覽器和操作系統。 這些 SDK 不直接與 AUT 交互,因此 Eyes 完全獨立於應用程序的實現和部署方式。

Applitools Eye 的兼容性

Applitools 為所有流行的編程語言和測試運行器提供 SDK,為 Web、移動、桌面、PDF、TV OS、物聯網、圖像等提供全面的測試覆蓋。

WEB SDK

WEB SDK 支持所有主要的 Web 測試工具和程序:

  1. Selenium for -Java、JavaScript、C#、Ruby、PHP、Python
  2. WebdriverIO4、WebdriverIO5、WebdriverIO6
  3. 硒 IDE
  4. 劇作家(新增)
  5. 傀儡師(新增)
  6. 測試咖啡館
  7. Storybook CSF React(新增)、Storybook -React、Angular、Vue
  8. 瓦提爾
  9. 水豚
  10. 量角器(新增)
  11. UFT/QTP
  12. 精益 CFT#,精益 JavaScript
  13. 編碼的用戶界面

移動 SDK

移動 SDK 支持所有主要的移動測試工具和程序:

  1. Appium Native –C#、Java、JavaScript、PHP、Python、Ruby
  2. Appium Web - C#、Java、JavaScript、PHP、Python、Ruby
  3. XCUI Objective-C,XCUI Swift
  4. 濃咖啡
  5. 葫蘆 iOS 和 Android

截圖 SDK

CLI、C#、Java、JavaScript、PHP、Ruby、XCTest Objective-C、XCTest Swift

桌面 SDK

Windows UFT、Windows 編碼 UI

無代碼工具

PDF 表單,無代碼 IDE

Applitools 眼中的測試經理

Eyes Test Manager 是一個基於瀏覽器的工具,提供對可視化 UI 測試數據的訪問。 它允許用戶管理測試結果、基線和其他元數據。

Eyes Test Manager 提供以下設施:

  • 訪問可視化 UI 測試運行的結果
  • 接受或拒絕記錄的差異
  • 用註釋註釋步驟
  • 添加匹配級別並忽略區域
  • 更新基線
  • 查看和管理應用程序和測試名稱
  • 查看和管理基線和分支
  • 查看和管理執行環境
  • 比較和合併基線分支
  • 管理您的帳戶、團隊和用戶

Eyes 中集成了各種其他工具和概念,可幫助用戶組織測試和測試用例。 Baseline 就是這樣一種工具。 目視檢查協議將捕獲的圖像與之前測試運行的基線中存儲的圖像進行比較。 每個測試運行都可以有不同的外觀和感覺。 每個測試的眼睛有許多基線,其中每個基線代表一個選定的環境。 這些基線中的每一個都可以存儲一系列圖像參考。

當可視化測試運行時,應用程序會通過一系列應用程序狀態來驅動,並且對於每個狀態,都會執行一個檢查點,該檢查點會為該狀態捕獲應用程序的圖像。 眼睛將捕獲的一系列圖像與存儲在該測試基線中的一系列參考圖像進行比較,並報告任何顯著差異。 基線中的圖像取決於測試運行,但它們也可能取決於其他因素,如操作系統、瀏覽器類型和視口大小。 這些因素稱為執行環境。

視口是應用程序窗口中任何應用程序的可視區域。 視口的大小也會影響任何頁面的佈局。 例如,改變瀏覽器的尺寸可能會改變渲染文本的外觀。 具有菜單等元素的響應式頁面可能會因不同的維度而有所不同。 字體和圖像大小可能會改變。 注意:視口是特定於平台的。