譯者 | 仇凱
審校 | 孫淑娟
編程語言一直是自動(dòng)化測(cè)試、自動(dòng)化測(cè)試人員、框架甚至工作職責(zé)中不可或缺的一部分。如果一個(gè)遺留項(xiàng)目已經(jīng)使用了Java進(jìn)行測(cè)試,該公司會(huì)為該項(xiàng)目尋找具備Java專業(yè)知識(shí)的人員。同樣,如果新項(xiàng)目需要從零開始構(gòu)建測(cè)試流程,那么首要考慮的事情就是團(tuán)隊(duì)擅長(zhǎng)哪種通用編程語言。
如果沒有人了解Python,那么就不要浪費(fèi)時(shí)間培訓(xùn)Python知識(shí)。在選擇測(cè)試框架時(shí)同樣會(huì)遵循此原則。如果項(xiàng)目開發(fā)語言是Java,那么需要支持Java的自動(dòng)化測(cè)試框架。對(duì)于遺留項(xiàng)目,同樣如此。
評(píng)估的過程可以根據(jù)需要調(diào)整,但結(jié)論是保持不變的,即使測(cè)試人員的工作會(huì)在這種情況中受到限制。實(shí)際上,一個(gè)好的測(cè)試人員可能擅長(zhǎng)編碼,也可能不擅長(zhǎng)編碼,但他在觀察功能和應(yīng)用程序行為方面應(yīng)該是完美的。
總之,他應(yīng)該擅長(zhǎng)“測(cè)試”。
我們正在進(jìn)入一個(gè)無代碼時(shí)代。
顧名思義,無代碼工具遵循類似的方法。如果你擅長(zhǎng)軟件測(cè)試,則不必過多擔(dān)心語法和庫。為了同一個(gè)目標(biāo),在這篇文章中,我們?cè)噲D探索適用于無代碼和開源這兩種令人敬畏的哲學(xué)的測(cè)試工具,因?yàn)檐浖?yīng)該取之于人,用之于人。
一、為什么要使用無代碼開源測(cè)試工具?
作為一名程序員,我知道如果你擅長(zhǎng)編程,你可能會(huì)有跳過本節(jié)或整篇文章的沖動(dòng)。但事實(shí)是,即便我們非常喜歡編程,也無法讓所有人都喜歡編程,尤其是在自動(dòng)化測(cè)試領(lǐng)域。在Katalon(一家提供自動(dòng)化測(cè)試產(chǎn)品的公司)和KMS(一家科技公司)對(duì)自動(dòng)化測(cè)試問題進(jìn)行的一項(xiàng)調(diào)查中,排在第二位的是缺乏專業(yè)人員。
不僅如此,只有56%的人認(rèn)為自己或團(tuán)隊(duì)有足夠的技術(shù)來執(zhí)行自動(dòng)化和維護(hù)測(cè)試任務(wù)。這是一個(gè)巨大的問題,無代碼工具似乎可以解決這個(gè)問題。
無代碼工具不需要通過編程來編寫測(cè)試用例。每個(gè)工具都有獨(dú)特的使用方法,例如使用英語創(chuàng)建測(cè)試用例、拖放UI元素或直接進(jìn)行數(shù)據(jù)重放。
開源工具在不同的領(lǐng)域工作。它不關(guān)心框架的使用,而是關(guān)心框架的開發(fā)。開源工具的開發(fā)對(duì)所有人開放。你和我都可以直接訪問貢獻(xiàn)頁面并以我們認(rèn)為合適的方式參與貢獻(xiàn)(只要他們目前正在接受貢獻(xiàn))。
了解這些信息后,我們可以繼續(xù)探索適用于無代碼和開源技術(shù)的組合工具。
二、開源無代碼測(cè)試工具
以下工具提供了采用開源技術(shù)的無代碼方案。請(qǐng)注意,這些工具的出現(xiàn)順序不代表推薦排名。
1.Testsigma
Testsigma是基于云的自動(dòng)化測(cè)試工具,與傳統(tǒng)測(cè)試相比,它可以顯著提升測(cè)試開發(fā)效率。你可以直接在云上注冊(cè)使用Testsigma,無需任何額外設(shè)置?;蚴褂肈ocker鏡像在本地部署,通過英語或記錄用戶操作創(chuàng)建測(cè)試腳本,自動(dòng)轉(zhuǎn)換為可編輯的步驟。你還可以通過各種瀏覽器和設(shè)備直接在云上執(zhí)行測(cè)試任務(wù)。
所以與其寫這樣的測(cè)試腳本:
Webdriver driver;
String URL = “https://testsigma.com”
driver.get(URL);
還不如寫類似“打開https://www.testsigma.com頁面”的測(cè)試用例。
后一種更容易理解和記憶。
該平臺(tái)具有內(nèi)置的可視化測(cè)試、參數(shù)化或數(shù)據(jù)驅(qū)動(dòng)的測(cè)試、2FA(兩步驗(yàn)證)測(cè)試和更高級(jí)的功能,可輕松完成自動(dòng)化測(cè)試。
對(duì)于移動(dòng)設(shè)備測(cè)試,Testsigma使用配備測(cè)試記錄器的真實(shí)設(shè)備以節(jié)省時(shí)間。記錄器可以將用戶的操作轉(zhuǎn)換為英文語言測(cè)試,反之亦然。這些操作可以被保存或進(jìn)行進(jìn)一步編輯。
該工具通過人工智能進(jìn)行維護(hù),可以在本地或云端運(yùn)行。提供云服務(wù)選項(xiàng)有助于Testsigma為團(tuán)隊(duì)之間的順暢協(xié)作提供支持,并通過簡(jiǎn)單的操作分享報(bào)告。此外,你可以通過擴(kuò)展平臺(tái)使用內(nèi)置插件或使用Testsigma的SDK創(chuàng)建屬于自己自定義插件,以豐富Testsigma的功能。
可以訪問Testsigma的官方GitHub倉(cāng)庫以了解更多信息。
2.Selenium IDE
Selenium IDE是用于Web測(cè)試的開源無代碼工具。該工具要求用戶在測(cè)試Web應(yīng)用程序的瀏覽器上安裝擴(kuò)展程序。Selenium IDE在無代碼領(lǐng)域中使用“記錄和重放”理念。這種理念要求用戶與應(yīng)用程序交互,然后所有交互操作都會(huì)被IDE記錄。隨后,這些操作記錄會(huì)形成測(cè)試操作,可以在其他版本或測(cè)試套件中執(zhí)行相同的測(cè)試任務(wù)。
Selenium IDE也可以通過命令行使用,這種場(chǎng)景需要安裝一些額外的組件。
測(cè)試人員還可以通過選擇不同的插件,來擴(kuò)展Selenium IDE的功能。他們會(huì)向你介紹其他命令或擴(kuò)展插件對(duì)第三方應(yīng)用程序的支持情況。
你可以訪問Selenium IDE的官方GitHub倉(cāng)庫以了解更多信息。
3.SikuliX
SikuliX的官方網(wǎng)站稱“SikuliX可以在Windows、Mac或某些Linux/Unix系統(tǒng)中自動(dòng)執(zhí)行屏幕中顯示的所有內(nèi)容?!边@本身就是一個(gè)強(qiáng)有力的聲明。
SikuliX使用由OpenCV提供支持的圖像識(shí)別技術(shù)識(shí)別各種GUI元素,然后以無代碼的方式工作。它不需要檢查應(yīng)用程序的源代碼,因此更加易于操作。SikuliX還可以模擬鍵鼠交互。
你可以訪問SikuliX的官方GitHub倉(cāng)庫以了解更多信息。
4.Rapise
Rapise是開源無代碼自動(dòng)化測(cè)試工具,用于Web測(cè)試、移動(dòng)應(yīng)用程序測(cè)試和桌面應(yīng)用程序測(cè)試。簡(jiǎn)而言之,Rapise可以對(duì)測(cè)試人員想要檢測(cè)的任何程序進(jìn)行測(cè)試。該工具使用無代碼架構(gòu)中的記錄和重放功能,并提供測(cè)試用例編輯功能,因此極大擴(kuò)展了其在測(cè)試方面的靈活性和兼容性。
通過Rapise,測(cè)試人員可以在測(cè)試記錄期間對(duì)瀏覽器中執(zhí)行的重放測(cè)試任務(wù)進(jìn)行實(shí)時(shí)驗(yàn)證。它提供了基于電子表格的編輯器,用于編輯測(cè)試記錄,如下所示:
Rapise還配備了基于人工智能的測(cè)試技術(shù),可以在測(cè)試對(duì)象變化時(shí)進(jìn)行適配調(diào)整。還可以同時(shí)為測(cè)試目標(biāo)執(zhí)行集成數(shù)據(jù)驅(qū)動(dòng)測(cè)試和關(guān)鍵字驅(qū)動(dòng)測(cè)試。正如Rapise所說,“通過使用Rapise,你可以為許多技術(shù)進(jìn)行測(cè)試?!?/p>
你可以訪問Rapise的官方GitHub倉(cāng)庫以了解更多信息。
5.Testproject
Testproject是免費(fèi)且自由使用的,但不是真正的開源軟件,而是作為無腳本自動(dòng)化測(cè)試工具被熟知,用于Web、移動(dòng)應(yīng)用測(cè)試以及API測(cè)試。該工具適用于所有主要平臺(tái)(Windows、macOS和Linux),可用于測(cè)試瀏覽器、版本迭代或移動(dòng)設(shè)備(感謝跨瀏覽器測(cè)試協(xié)作)。
基于云的基礎(chǔ)架構(gòu)可幫助測(cè)試人員和團(tuán)隊(duì)實(shí)現(xiàn)遠(yuǎn)程協(xié)同工作。在工具特殊需求和集成方面為很多公司提供附加支持,以便在協(xié)作時(shí)更有效的使用內(nèi)建工具達(dá)成功能需求。
Testproject與記錄器一起工作,可以與Selenium和Appium結(jié)合使用,供喜歡腳本的人使用。
三、你喜歡哪種無代碼技術(shù)?
無代碼自動(dòng)化工具使測(cè)試人員更接近軟件,而不必?fù)?dān)心自己是否精通軟件所用的編程語言。無代碼測(cè)試讓測(cè)試人員專注于觀察以高效發(fā)現(xiàn)錯(cuò)誤并節(jié)省時(shí)間,進(jìn)而加快交付速度。但是,工具開發(fā)人員仍然需要制定通用標(biāo)準(zhǔn),使得人們能夠通過通用標(biāo)準(zhǔn)而非編程去完成軟件測(cè)試任務(wù)。
這使得每個(gè)無代碼工具都是獨(dú)一無二的。更不用說開源世界的特性可以將開發(fā)人員聚集在一起,并盡可能的為項(xiàng)目做出貢獻(xiàn)來增強(qiáng)軟件功能。
我希望在閱讀完這篇文章后,你會(huì)關(guān)注一種無代碼測(cè)試方案。如果你有其他可以使用的開源無代碼工具,請(qǐng)將它們放在評(píng)論中。
祝大家使用無代碼測(cè)試方案快樂!
原文鏈接:https://hackernoon.com/popular-codeless-open-source-testing-tools
譯者介紹
仇凱,51CTO社區(qū)編輯,目前就職于北京宅急送快運(yùn)股份有限公司,職位為信息安全工程師。主要負(fù)責(zé)公司信息安全規(guī)劃和建設(shè)(等保,ISO27001),日常主要工作內(nèi)容為安全方案制定和落地、內(nèi)部安全審計(jì)和風(fēng)險(xiǎn)評(píng)估以及管理。
? ?