文章目錄
AI對測試改進的方向總結
- 用戶行爲分析 & 個性化營銷 & 量化用戶體驗指標 → 用戶體驗優化
- 可視化測試
- 自動發現和執行測試操作或生成測試腳本
- 消除不穩定測試
- 測試平臺或測試中臺
用戶體驗
用戶行爲分析
基於用戶行爲分析來得出頁面的交互體驗優化方向,舉例:用戶有哪些典型路徑,在完成某個意圖時的典型路徑是否過長?某個頁面上用戶對各個控件的操作的頻度是否和預期一致以及是否有利用和改善空間?
個性化營銷
- 對客戶進行多維度地分析:以用戶的地域、性別、年齡等人文屬性建立分析維度,提高營銷的相關性;
- 對營銷後的用戶行爲分析,來進一步決定營銷策略,如頻率等;
建立指標來量化評價用戶體驗
使用訪問量、平均響應時間、業務功能問題數量等來綜合量化用戶體驗指標;谷歌也有HEART模型;
用戶體驗指標可以通過用戶屬性(地域,性別,年齡等),業務模塊等維度來細化後比較差異並得出改進計劃;
輔助測試
可視化測試
基於圖像處理技術和算法,機器學習等技術,可以對可視化界面直接進行智能識別和操作,對得到的可視化結果進行智能比較(不同於像素比較,穩定性更好);
自動發現和執行測試操作或生成測試腳本
- 基於可視化測試自動識別界面的元素並智能完成相關功能的驗證;也意味着可以自動生成測試案例並執行;
- 基於埋點映射關係和用戶行爲等來使用機器學習自動生成自動化測試腳本;
消除不穩定測試
智能識別測試結果中的“不一致”是變更還是Bug,並對“變更”導致的不一致,自動進行更新測試腳本。
測試平臺或測試中臺
類似現在雲測的概念,集中提供測試服務;進而可以利用收集的測試數據,通過AI輔助分析,來優化測試案例,測試行爲和驗證結果等;
一些AI測試工具的主要理念
Applitools
Applitool採用一種自適應的算法來進行可視化測試(或者說視覺驗證),而且不需要事先進行各種設置,不需要明確地調用所有元素,但能夠發現應用程序中的潛在錯誤。主要特點:利用基於機器學習(ML) / AI進行自動維護(能夠將來自不同頁面/瀏覽器/設備的類似變化組合在一起);能夠自動理解哪些更改更可能是一種缺陷還是一種期望,就這種差異進行排序;
Appvance IQ
根據應用程序的映射和實際用戶活動分析,使用機器學習和認知自動生成自動化測試腳本。AI驅動的腳本生產是軟件測試的一項重大突破。 它將極大降低腳本開發的巨大工作量——接近爲零的工作量。AI創建的腳本組合既是用戶驅動的,又比手動創建的腳本更全面。
Eggplant AI
Eggplant Digital Automation Intelligence整套工具使用AI和深度學習來從界面上尋找缺陷,能夠自動生成測試用例,大幅度提高測試效率和覆蓋率。
MABL
Mabl由一羣前Google僱員研發的AI測試平臺,側重對應用或網站進行功能測試。在Mabl平臺上,我們通過與應用程序進行交互來 “訓練”測試。主要特點是:沒有腳本的自動化測試(Scriptless tests);消除不穩定的測試(flaky tests) - 就像其他基於AI的測試自動化工具一樣,Mabl可以自動檢測應用程序的元素是否已更改,並動態更新測試以補償這些更改;
ReTest
ReTest 是一家德國公司的產品,源於人工智能研究項目,使用人工智能猴子來自動測試應用程序(Intelligent monkey testing)。與其他測試自動化工具不同,在創建腳本時不需要選擇被測對象的ID、會自動處理等待時間,腳本執行非常穩定。如果屬性或元素是不穩定的,那麼可以在執行測試後簡單地標記它們。本工具號稱是專門爲測試人員設計的,能有效地消除了用戶擁有任何編程技能的需求,測試人員只需要領域知識、待測試軟件的工作原理以及認定缺陷的能力。
Sauce Labs
Sauce Labs是最早開始基於雲的自動化測試的公司,每天運行超過一百五十次的測試,通過多年測試數據的積累而擁有一個虛擬寶庫,能夠利用機器學習來針對這些數據進行分析,更好地理解測試行爲,主動幫助客戶改進測試自動化。他們相信,在測試中使用已知的模式匹配和不同的AI技術是非常有用的。
Sealights
Sealights類似Sauce Labs,也是一個基於雲的測試平臺,能夠利用機器學習技術分析SUT的代碼以及與之對應的測試,不侷限於單元測試,還包括系統級的業務測試和性能測試。它還有一個顯著特點,基於機器學習以呈現完整的質量Dashboard,幫助我們進行“質量風險”的評估,能夠關注用戶所關心的東西,包括哪些代碼未經某種類型或特定的測試,這樣很容易地確保未經測試的代碼不會上線,至少要得到儘可能的必要的驗證。
Test.AI
Test.AI (前身爲Appdiff ) 被視爲一種將AI大腦添加到Selenium和Appium的工具,以一種類似於Cucumber的BDD語法的簡單格式定義測試。Test.AI在任何應用程序中動態識別屏幕和元素,並自動驅動應用程序執行測試用例。
Testim
Testim專注於減少不穩定的測試(flaky tests)和測試維護,試圖利用機器學習來加快開發、執行和維護自動化測試,讓我們開始信任自己的測試。
iTestin
iTestin雲測,融合了目前測試領域頂尖的自然語言處理、文本識別、圖標識別技術,全面提升測試產品的易用性和自動化效率,在提升腳本編寫效率一倍的同時,將腳本的維護成本降低了一倍。測試人員只需在界面中輸入點擊、等待、檢查、長按、輸入等自然語言的文字描述,後臺的AI就能準確實時的在真機上進行完整無誤的操作和相關指令。