無代碼自動化測試的優秀實踐與工具
譯文【51CTO.com快譯】通常,測試人員在初次聽到“無代碼自動化測試”的概念時,往往會心生疑惑,尤其是對于那些習慣了使用同一套代碼,進行應用程序開發和創建測試用例的開發人員和測試人員而言,更是如此。他們會覺得有那么多的工具和信息需要解析,入門此類測試似乎比較困難。不過,“無代碼自動化測試”實際上只是知難行易罷了。在本文中,我將向您介紹可以協助實現該目標的三種優秀實踐,并探索四種最受支持的無代碼自動化測試工具。
最佳實踐
入門通常是開啟一項新事物中最困難的部分。幸運的是,我們并不是第一個“吃螃蟹的人”,因此,該領域中有著無數開發與測試人員,已為我們總結了各種優秀的實踐。在此,我向您推薦如下三條:
- 從小處入手,不斷進階:由于無代碼自動化測試通常處于系統或應用級別上,因此我們往往會需要創建復雜的、針對整體應用的測試套件。以往經驗告訴我們,不必強求一開始便能達到100%的測試覆蓋率。相反,我們應該更加專注于創建少量的測試用例,并真正了解所選工具的運行原理。常言道,工欲善其事,必先利其器。我們與其盲目地開始創建數個測試用例,不如花些時間熟悉手頭的測試工具。
- 著重關注基本用例:常言說得好,貪多嚼不爛。我們與其去開發和測試每一個用例,不如優先考慮某些重點用例。例如,我們可以先從如下用例入手:
- 典型用戶在使用過程中會涉及到的哪些最常見的使用場景
- 各種最關鍵的用例(如,登錄或轉賬交易)
- 大多數用戶都會用到的用例(如,退出或注冊訂閱)
- 關注用戶的使用流程:我們在做測試的時候,要盡量避免從應用構建者的角度出發,而應當從用戶的角度去全面試用。例如,在測試登錄表單的時候,重點關注那些用戶可見的字段、以及界面上的登錄按鈕。畢竟這些功能與服務,會經常與用戶產生交互。我們應當通過深入測試,保證此類流程的順利執行,再去考慮對其他增值服務和非常用功能的測試。
工具
常言道,磨刀不誤砍柴工。我們需要在開展無代碼自動化測試之前,找到合適的工具。與許多常規軟件中的其他部分一樣,無代碼自動化測試目前已擁有一個成熟的生態系統。不過,我們可以選用的工具可謂良莠不齊。雖然目前尚無一款可以完美地適用所有的需求,但是它們中的確有些能夠在特定的場景中發揮不俗的作用。下面,我將為您列舉出四款最流行的無代碼自動化測試工具,通過簡單介紹他們的關鍵功能,以進行相互比較。如果您想了解更多有關低代碼開發的趨勢,請參考報告。
Katalon Studio
作為一款頂級的無代碼測試工具,Katalon Studio既能夠提供圖形化用戶界面(GUI),又允許開發人員和測試人員創建各種新的測試用例,還可以為驗證Web、移動、簡單對象訪問協議(SOAP)、表征狀態轉移(REST)、應用程序編程接口(API)、以及各種桌面應用,提供開箱即用(out-of-the-box)的支持。此外,它可以將測試用例存儲為特定的、以.tc為擴展名的、可擴展標記語言(XML)文件。據此,我們可以確保使用相同代碼版本控制工具(如,Git),來管理應用程序的測試用例。
關鍵點:
- 針對Web、移動、API和桌面應用,創建自動化測試的內置工具
- 可基于桌面的工具
- 提供熟悉的、類似Eclipse的界面
- 可使用GUI創建測試,并將它們保存為基于文本的文件
- 其用戶包括三星、豐田和西門子等世界級知名公司
- 十分強大靈活、且能夠創建特定的測試
圖 1:Katalon Studio
Perfecto
與Katalon Studio不同,Perfecto主要專注于Web和移動應用的測試。因此,對于那些主要從事REST API開發的人員而言,該工具可能不易上手。但是對于那些從事創建基于Web和移動應用業務的人員來說,Perfecto為他們提供了集中式的、與設計相關的各種專業功能、報告和儀表板。此外,Perfecto也支持在真實和虛擬的硬件上,測試各種移動應用。
關鍵點:
- 專注于Web和移動的開發
- 提供基于Web的圖形化用戶界面
- 為具有持續集成(CI)經驗的用戶提供了熟悉的儀表板
- 能夠針對不同瀏覽器和移動設備的組合開展測試
- 允許在真實的移動硬件上進行測試
- 其用戶包括福特、IBM、Salesforce和Verizon等超過半數的財富500強企業
圖 2:Perfecto
CloudQA
CloudQA通過一種簡單的方法,來開展無代碼自動化測試。CloudQA可以建立一個全面的設計環境,可供用戶根據待測應用的實際需求,決定測試所用到的設備、瀏覽器、以及那些有待傳遞給應用的詳細信息。例如,CloudQA可以被作為Chrome的擴展程序,去按需瀏覽和導航Web應用,并在完成操作后做出各種斷言(assertions)。這是一種近似于教科書式的無代碼自動化測試方法,可以讓新手測試人員更加容易地創建出新的測試用例,并能快速地構建出大量的測試套件。
關鍵點:
- 簡單、直接、可快速創建大量的測試用例
- 既能夠使用Chrome擴展程序對測試進行記錄,又可以通過Web應用去查看和編輯已記錄的測試
- 可以操作完成后,對那些期望出現內容做出各種斷言
- 可能難以創建出過于詳細和復雜的測試用例
圖 3:CloudQA
Ranorex
Ranorex將許多同類工具的優點都整合到了一個單一的自動化測試工具上。雖然它可能沒有Perfecto那樣對移動應用提供的廣泛支持,或像CloudQA那樣的簡單性,但是Ranorex提供了一種簡單的運行機制,即:通過提供可擴展的工具包,來創建復雜的測試用例。同時,Ranorex也可以將測試用例創建為更簡單的聚合步驟。例如,用戶通過單擊特定的按鈕,或提交表單,即可實現復用性。在實際使用中,測試人員還會經常用到Ranorex能夠與其工具套件相集成的特性。
關鍵點:
- 能夠與諸如:Git、Jira、Visual Studio Code、以及Jenkins等常見的開發工具相集成
- 允許用戶對測試用例進行源頭控制
- 既提供了簡單的入門級界面,又允許專業用戶按需添加各種復雜的細節
- 支持桌面、Web、以及移動應用等測試
圖 4:Ranorex
圖片來自Ranorex的官網
小結
如今,無代碼自動化測試已逐漸在測試領域流行開來。如上文所述,您可以通過從小處入手,配合使用上述各種優秀實踐,以及恰當的無代碼工具,化繁為簡,逐步建立出一個滿足用戶體驗需求的直接測試用例與套件。
原文標題:No-Code Automated Testing: Best Practices and Tools,作者:Justin Albano
t-practices-tools
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】
































