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