Katalon Studio VS 那些以 Selenium 為基礎(chǔ)的開源框架們

各位奮斗和即將奮斗在軟件測(cè)試的筒子們合溺,給你們找了個(gè)好東西 :)

本文為 Katalon 官方博客的文章劲弦,我自己進(jìn)行的翻譯置尔,原文鏈接:?https://www.katalon.com/resources-center/blog/katalon-studio-vs-selenium-based-open-source-frameworks/

如果對(duì)它感興趣妄讯,請(qǐng)留言趋惨,我會(huì)繼續(xù)為大家?guī)砀嗟母韶?/p>


Katalon Studio 是一個(gè)采用了 Selenium 為核心引擎的自動(dòng)化測(cè)試解決方案鸟顺。盡管它運(yùn)用了一些 Selenium 的功能, 但是它不僅僅只是簡(jiǎn)單的將 Selenium 進(jìn)行包裝。 這篇文章將具體的對(duì) Katalon 和 以 Selenium 為基礎(chǔ)的開源框架進(jìn)行比較讯嫂,分別對(duì)目標(biāo)用戶蹦锋,部署,測(cè)試管理及腳本語言的支持欧芽,性能莉掂,可用性和與其他工具的整合等方面進(jìn)行詳述。

1. 目標(biāo)用戶

? 軟件自動(dòng)化測(cè)試經(jīng)常需要編程技術(shù)和待測(cè)產(chǎn)品的一些相關(guān)知識(shí)千扔。待測(cè)產(chǎn)品的相關(guān)技術(shù)不是必須的憎妙,但是推薦掌握。比如說曲楚,如果你是測(cè)試網(wǎng)頁的厘唾,那么知道一些 HTML 和 JavaScript 的知識(shí)總是好的。

? Katalon Studio 的使用者可以是并沒有掌握太多專業(yè)技術(shù)的測(cè)試人員龙誊。Katalon Studio 把復(fù)雜的技術(shù)隱藏起來抚垃,并且提供了可以手動(dòng)操作的用戶友好的界面(用戶可以手動(dòng)對(duì)測(cè)試步驟手動(dòng)拖拽,選擇關(guān)鍵詞和測(cè)試對(duì)象)载迄,同時(shí)讯柔,Katalon Studio 也為懂得技術(shù),可以深入研究代碼(通過腳本模式)的使用者們保留了必要的武器护昧,比如關(guān)鍵詞高亮,代碼提示和調(diào)試粗截。

? 對(duì)于擁有很好的編程能力的測(cè)試者這來說惋耙,Selenium 和 Appium 是更適合他們的主要的自動(dòng)化測(cè)試庫。這些庫(當(dāng)然以及他們自己所需要的支持文件)通常需要 IDE熊昌,比如 Eclipse 或者 Visual Studio, 來引如一個(gè)開發(fā)工程绽榛,測(cè)試者還需要安裝必要的測(cè)試框架,比如 JUnit, Nunit, 和 TestNG 來完成一個(gè)測(cè)試用例婿屹。

? 讓我們類比一下灭美,這就像在自動(dòng)化工廠里面,很多車都用的同一款引擎昂利,而工人們根據(jù)車的不同模型來設(shè)計(jì)車的外形和內(nèi)造届腐。

? 類似的,Katalon Studio 基本上來說是一個(gè)一體化解決方案蜂奸。如果你還是(而且有能力)從頭做起犁苏,你可以選擇使用一個(gè)“引擎”,比如 Selenium, Appium 等等扩所, 來搭建一個(gè)類似于 Katalon Studio 的解決方案围详。除了 Katalon Studio, 還有一些其他的測(cè)試框架也是基于 Selenium 和 Appium 的祖屏,比如 Robot Framework (http://robotframework.org

2. 部署 & 開始第一步

? 大部分開源項(xiàng)目比較難以創(chuàng)建和部署助赞,因?yàn)樗麄兪怯刹煌拈_發(fā)人員開發(fā)并向一個(gè)中心提交的买羞,比如 Github。你也學(xué)需要用提交的源代碼來搭建所有的東西雹食。但是即使像 Selenium 和 Appium 這樣已經(jīng)打包成即用型的框架哩都,你仍然要閱讀他們?yōu)?API 提供的技術(shù)文檔,把他們整合進(jìn)一個(gè) IDE婉徘,使用他們推薦的編程語言漠嵌。下面分別是 Selenium, Appium 和 Katalon Studio 創(chuàng)建和運(yùn)行所需要步驟的概括:

Selenium:

? 下載和安裝 Java SDK

? 下載和安裝測(cè)試庫: 對(duì)應(yīng)你偏好語言的 Selenium client API, Selenium Server,或者一個(gè)獨(dú)立包(將 client 和 server 捆包在一起的一個(gè)庫)

? 下載 IEDriver 和 ChromeDriver盖呼,創(chuàng)建環(huán)境和 Path 路徑

? 下載和創(chuàng)建開發(fā) IDE 和你喜歡的測(cè)試框架儒鹿,比如 JUnit, NUnit, 和 TestNG

? 閱讀 Selenium API 文檔來開始創(chuàng)建一個(gè)項(xiàng)目,并開始寫些代碼

Appium:

? 下載和安裝對(duì)應(yīng)你的編程語言的 SDK, 例如 Java, Python, Ruby 和 C#

? 下載和安裝測(cè)試庫(Appium几晤, Nodejs约炎, Android SDK,如果是Mac和IOS的話XCode)蟹瘾,創(chuàng)建環(huán)境和 Path 路徑

? 下載和創(chuàng)建開發(fā) IDE 和你喜歡的測(cè)試框架圾浅,比如 JUnit, NUnit, 和 TestNG

? 閱讀 Selenium API 文檔來開始創(chuàng)建一個(gè)項(xiàng)目,并開始寫些代碼

Katalon Studio 是一個(gè)統(tǒng)一的組合憾朴, 它包含幾乎所有必要的東西狸捕,比如 Java,Android SDK, 用以驅(qū)動(dòng)網(wǎng)頁的 Web drivers众雷,和必要的支持文件灸拍。你所要做的僅僅是將它下載和安裝到你的電腦上。將安裝步驟簡(jiǎn)化到最小

介于 Appium 頻繁的更新砾省, Katalon Studio 沒有捆綁 Appium, 如果你在測(cè)試 mobile app, 你需要安裝 Appium, Nodejs(在 windows 上)和 XCode (在 Mac 上)

你會(huì)對(duì) Katalon Stuodio 迅速的上手鸡岗,因?yàn)樗兄押玫慕缑婧鸵恍┌咐こ獭.?dāng)然编兄,用戶手冊(cè)(docs.katalon.com)可以幫你迅速的把簡(jiǎn)單到復(fù)雜的功能都走一遍

3. 測(cè)試管理和腳本語言支持

測(cè)試工具支持:

Katalon Studio 提供豐富的圖形界面轩性,比如菜單,樹形視圖狠鸳, 表格等等揣苏,來管理測(cè)試用例,對(duì)象和數(shù)據(jù)文件碰煌。它的一些組件舒岸,比如 語法高亮,代碼建議芦圾, 調(diào)試等非常理想的為不太懂代碼蛾派,或者希望只進(jìn)行拖拽操作的測(cè)試者提供幫助

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (Katalon Studio 手動(dòng)模式)


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (Katalon Studio 腳本模式)


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(Katalon Studio debug 模式)

Selenium 和 Appium,在和某個(gè)特定開發(fā) IDE,比如 Eclipse 和 Visual Studio 進(jìn)行整合的時(shí)候洪乍,對(duì)于開發(fā)人員來說提供了直觀的環(huán)境眯杏,但是對(duì)于手動(dòng)測(cè)試或者不懂技術(shù)的測(cè)試者來說太過陌生和不必要的復(fù)雜。對(duì)他們來說用 Selenium 和 Appium 管理測(cè)試是一種挑戰(zhàn)壳澳。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(Selenium + TestNG + Eclipse 只有開發(fā)模式)


? ? ? ? ? ? ? ? (測(cè)試用例岂贩,測(cè)試組件,測(cè)試數(shù)據(jù)主要由 XML 文件和編程語言代碼維護(hù))

腳本語言支持:

Katalon Studio: Java/Groovy 是目前僅有的選項(xiàng)

Selenium, Appium + 一個(gè) IDE: 可以選擇多種語言

4. 性能

Katalon Studio 使用 Groovy, 一種建立在 Java 之上的語言巷波,然后需要再如很多庫來解析測(cè)試數(shù)據(jù)萎津,測(cè)試對(duì)象,日志抹镊。所以锉屈,如果有幾百步的測(cè)試不走的長(zhǎng)時(shí)間測(cè)試上它會(huì)比 Java 稍微慢一點(diǎn)

5. 可用性和功能性

5.1 對(duì)象偵測(cè):

檢測(cè)對(duì)象是最重要,但是也是自動(dòng)化測(cè)試?yán)锩孀钤挄r(shí)間的垮耳。

Katalon Studio 支持網(wǎng)頁對(duì)象檢測(cè)(使用 IE, Firefox, Chome 的網(wǎng)頁插件)和移動(dòng) app ( 使用 screen simulator )颈渊。Katalon Studio 也支持對(duì)待測(cè)網(wǎng)頁中抓取的對(duì)象進(jìn)行高亮:


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (Katalon 對(duì)象偵測(cè) -- 支持高亮對(duì)象)

Selenium 有一個(gè) Firefox 插件,名字叫 Selenium IDE, 來支持網(wǎng)頁應(yīng)用對(duì)象的錄制终佛。不幸的是俊嗽,這個(gè)插件沒有再被維護(hù)和支持了。

Appium 提供了在移動(dòng)端的競(jìng)品铃彰,在偵測(cè)移動(dòng)端對(duì)象上非常好用绍豁,但是它沒有高亮的功能。



5.2 測(cè)試數(shù)據(jù)管理和數(shù)據(jù)驅(qū)動(dòng)

Katalon Studio 提供 Data File 對(duì)象豌研,它能從外部資源獲得數(shù)據(jù): CSV 文件妹田,Excel 文件, Relational DB鹃共。 Katalon Studio 同樣支持根據(jù)一個(gè)數(shù)據(jù)文件來進(jìn)行的?數(shù)據(jù)驅(qū)動(dòng)測(cè)試。舉個(gè)例子驶拱,當(dāng)測(cè)試登錄功能的時(shí)候霜浴,你制定一個(gè)由 100 個(gè)預(yù)定義的賬號(hào)組成的 Excel 表格或者數(shù)據(jù)庫

5.3 錄制和測(cè)試生成

錄制測(cè)試是幫助使用者學(xué)習(xí)和適應(yīng)自動(dòng)化測(cè)試最好的步驟。它幫助一個(gè)自動(dòng)化測(cè)試人員做兩件主要的事情:獲取對(duì)象(在測(cè)試中)和用適當(dāng)?shù)膭?dòng)作或者關(guān)鍵詞產(chǎn)生測(cè)試步驟蓝纲,這樣可以省下 50% - 60% 的編寫測(cè)試用例的時(shí)間

Katalon Studio 可以在移動(dòng)端和網(wǎng)頁端錄制和產(chǎn)生測(cè)試腳本


類似于 Katalon Studio, Appium 支持為移動(dòng) app 錄制和產(chǎn)生腳本

Selenium 有 Selenium IDE (現(xiàn)在不再更新和維護(hù)了)阴孟,來記錄用戶的動(dòng)作和產(chǎn)生 Junit/TestNG 測(cè)試用例,但是對(duì)象的定位信息很難被直接寫進(jìn)生成的代碼里税迷,如沒有對(duì)象管理來支持的話:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (用 Selenium IDE 來錄制測(cè)試)


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (用 Selenium IDE 生成的測(cè)試用例)

5.4 內(nèi)置關(guān)鍵詞

Katalon Studio 預(yù)置了多組常用關(guān)鍵詞和動(dòng)作永丝,足以讓用戶編寫大部分測(cè)試用例。如果他們有更高級(jí)的或者更具體的要求箭养,他們?nèi)匀豢梢詾轫?xiàng)目自定義關(guān)鍵詞慕嚷。自定義的關(guān)鍵詞是內(nèi)置關(guān)鍵詞的擴(kuò)展,他們可以和內(nèi)置關(guān)鍵詞一樣使用,還可以分享給不同的用戶

6. 報(bào)告和分析

Katalon Studio 提供直觀的喝检,更加友好的報(bào)告嗅辣,可讀性高的消息和測(cè)試失敗時(shí)捕捉的截屏,這些都可以輸出成 CSV挠说, HTML 和 PDF 文件

Katalon Analytics 將測(cè)試結(jié)果用一種可互動(dòng)的澡谭,更流行的方式來可視化,它可以是團(tuán)隊(duì)迅速分析問題损俭,對(duì)他們自動(dòng)化測(cè)試有更好的理解


? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(包含可視化執(zhí)行結(jié)果的 Katalon Analytics 儀表板)

Selenium 和 Appium 本身沒有報(bào)告工具蛙奖,但是基于某些測(cè)試框架,會(huì)有一些簡(jiǎn)單的報(bào)告模板杆兵。Katalon 所能提供的復(fù)雜的報(bào)告和分析結(jié)果恐怕是 Selenium 和 Appium 最想提供的吧

? ? ? ? ? ? ? ? ? ? ? ? ? (包含 stack-trace 的 TestNG 報(bào)告雁仲, 沒有測(cè)試失敗的截屏)

7. 集成

Katalon Studio 可以和多個(gè)測(cè)試管理系統(tǒng)和 bug 追蹤系統(tǒng)集成,包括 qTest (https://www.qasymphony.com) 和 Jira 來提交 bug, defects拧咳,測(cè)試日志和測(cè)試結(jié)果伯顶。 Katalon Studio 也可以和 Kobiton 集成, Kobiton 是一個(gè)云端的移動(dòng)研究平臺(tái)骆膝,在上面可以進(jìn)行 云端移動(dòng)測(cè)試 (https://kobiton.com

8. CI 集成

Katalon Studio 提供了一個(gè)命令行的借口祭衩,允許 CI 系統(tǒng)呼叫和啟動(dòng)測(cè)試的執(zhí)行

Selenium 和 Appium:用戶必須創(chuàng)建和配置執(zhí)行任務(wù) (Ant Tasks, maven goals 等等)來啟動(dòng)測(cè)試的執(zhí)行

9. 客戶支持

Katalon 團(tuán)隊(duì)比 Selenium 和 Appium 更加致力于積極的支持 Katalon Studio 的用戶們,通過它的網(wǎng)站和論壇

Selenium 和 Appium 是開源的阅签,用戶也許可以在別人那里掐暮,或者 Selenium 組織那里找到一些答案,但是速度得不到保證政钟。

10. Bug 修復(fù)路克,發(fā)布日程

Selenium 和 Appium 組沒有一個(gè)清晰的發(fā)布計(jì)劃,而且 bug 通常不會(huì)被迅速修復(fù)养交。

Katalon Studio 每個(gè)月發(fā)布版本更新(更小的補(bǔ)丁版本經(jīng)常在幾天到一周內(nèi)更新)精算,而且 bug 通常在幾天內(nèi)被修復(fù),用戶的反饋時(shí)我們高度重視和迅速反應(yīng)的

11. 幾個(gè)其他自動(dòng)化測(cè)試問題的解決辦法

Selenium 只能在瀏覽器內(nèi)測(cè)試 HTML 的內(nèi)容碎连。特殊的和自定義的控制灰羽,比如彈窗和內(nèi)嵌對(duì)象(Flash, Flex, Media)將會(huì)讓 Selenium 手足無措

Katalon Studio,卻可以處理這些窗口控制鱼辙,還能認(rèn)識(shí)圖片

Katalon Studio 允許從已經(jīng)開始的 session 的任意一步開始測(cè)試廉嚼,這對(duì)于故障排除測(cè)試來說非常重要

Katalon Studio 重載了 Firefox driver, 以使新的 Firefox 版本(47+)可以兼容舊版本的 driver。對(duì)于 Selenium 社區(qū)來說倒戏,他們還在與不穩(wěn)定的 Gecko driver 苦苦掙扎



本文遵守知識(shí)共享協(xié)議:署名-非商業(yè)性使用-相同方式共享 (BY-NC-SA)簡(jiǎn)書協(xié)議

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末怠噪,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子杜跷,更是在濱河造成了極大的恐慌傍念,老刑警劉巖矫夷,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異捂寿,居然都是意外死亡口四,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門秦陋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蔓彩,“玉大人,你說我怎么就攤上這事驳概〕嘟溃” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵顺又,是天一觀的道長(zhǎng)更卒。 經(jīng)常有香客問我,道長(zhǎng)稚照,這世上最難降的妖魔是什么蹂空? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮果录,結(jié)果婚禮上上枕,老公的妹妹穿的比我還像新娘。我一直安慰自己弱恒,他們只是感情好辨萍,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著返弹,像睡著了一般锈玉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上义起,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天拉背,我揣著相機(jī)與錄音,去河邊找鬼默终。 笑死去团,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的穷蛹。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼昼汗,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼肴熏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起顷窒,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤蛙吏,失蹤者是張志新(化名)和其女友劉穎源哩,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鸦做,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡励烦,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了泼诱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片坛掠。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖治筒,靈堂內(nèi)的尸體忽然破棺而出屉栓,到底是詐尸還是另有隱情,我是刑警寧澤耸袜,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布友多,位于F島的核電站,受9級(jí)特大地震影響堤框,放射性物質(zhì)發(fā)生泄漏域滥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一蜈抓、第九天 我趴在偏房一處隱蔽的房頂上張望启绰。 院中可真熱鬧,春花似錦资昧、人聲如沸酬土。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽撤缴。三九已至,卻和暖如春叽唱,著一層夾襖步出監(jiān)牢的瞬間屈呕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來泰國打工棺亭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留虎眨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓镶摘,卻偏偏與公主長(zhǎng)得像嗽桩,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子凄敢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • Selenium入門 歡迎閱讀Selenium入門講義碌冶,本講義將會(huì)重點(diǎn)介紹Selenium的入門知識(shí)以及Selen...
    厲鉚兄閱讀 11,855評(píng)論 3 68
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,519評(píng)論 25 707
  • refer 朝天椒的夏天 一.selenium入門概念篇 最近開始接觸selenium,剛開始時(shí)僅僅是知道它是一個(gè)...
    mcdullsnow閱讀 1,313評(píng)論 0 9
  • 這次的雪下的的確認(rèn)真 一夜大雪紛飛 多年以后 天剛亮就喊我起來掃雪也是美好的回憶
    像掉進(jìn)海里上不了岸閱讀 394評(píng)論 4 6
  • 歷史多有風(fēng)水之說涝缝,從《周易》扑庞,《奇門遁甲》譬重,《尋龍秘書》等等,我們可以看到許多罐氨,從古至今的風(fēng)水學(xué)說臀规,而現(xiàn)如今,風(fēng)水...
    楚煊閱讀 162評(píng)論 0 0