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