????后續(xù)章節(jié)中矗积,RobotFramework都縮寫為RF
一. RF概述
????Robot Framework是一個用于驗收測試和驗收測試驅動開發(fā)的開源測試自動化框架纵朋。它遵循不同的測試用例風格,關鍵字驅動椒功、行為驅動和數(shù)據(jù)驅動用于編寫測試用例争舞。Robot Framework為外部庫提供支持,這些庫是開源的工具耳鸯,可以用于自動化。最常用的庫是用于web開發(fā)和UI測試的Selenium庫膀曾。
????測試用例是使用表格樣式的關鍵字樣式編寫的县爬。可以使用任何文本編輯器或機器人集成開發(fā)環(huán)境(RIDE)編寫測試用例添谊。
二. RF特點
1. 表格格式的測試用例
????Robot框架附帶一個簡單的表格格式财喳,其中使用關鍵字編寫測試用例。新開發(fā)人員很容易理解和編寫測試用例斩狱。
2. 關鍵字
????Robot framework提供了內置的關鍵字耳高,這些關鍵字可以從諸如Selenium庫(打開瀏覽器、關閉瀏覽器所踊、最大化瀏覽器等)之類的庫中獲得泌枪。我們還可以創(chuàng)建用戶定義的關鍵字,它是其他用戶定義的關鍵字或內置或庫關鍵字的組合秕岛。我們還可以將參數(shù)傳遞給這些關鍵字碌燕,這使得用戶定義的關鍵字類似于可以重用的函數(shù)。
3. 變量
????Robot framework支持變量——scalar继薛、list和dict修壕。Robot framework中的變量易于使用,在編寫復雜的測試用例時非常有用遏考。
4. 庫
????Robot framework支持很多外部庫慈鸠,比如SeleniumLibrary、數(shù)據(jù)庫庫灌具、FTP庫和http庫青团。SeleniumLibrary主要用于幫助與瀏覽器交互像棘,以及幫助進行web應用程序和UI測試。Robot framework也有自己的內置庫壶冒,用于字符串、日期截歉、數(shù)字等胖腾。
5.資源
????Robot framework還允許從外部導入帶有關鍵字的Robot文件,以便與測試用例一起使用瘪松。資源非常容易使用咸作,當我們需要使用一些已經為其他測試項目編寫的關鍵字時,這些資源將非常有用宵睦。
6. 數(shù)據(jù)驅動測試
????Robot framework支持關鍵字驅動的樣式測試用例和數(shù)據(jù)驅動的樣式记罚。數(shù)據(jù)驅動使用高級關鍵字作為測試套件的模板,測試用例用于與模板中定義的高級關鍵字共享數(shù)據(jù)壳嚎。它使得測試具有不同輸入的UI非常容易桐智。
7. 測試用例標簽
????Robot framework允許標記測試用例,這樣我們既可以運行標記測試用例烟馅,也可以跳過標記的測試用例说庭。當我們只想運行一組測試用例或跳過它們時,標記會有所幫助郑趁。
8. 報告和日志
????Robot framework以報告和日志的形式提供了測試套件刊驴、測試用例執(zhí)行的所有細節(jié)。測試用例的所有執(zhí)行細節(jié)都可以在日志文件中找到寡润。提供了測試用例是否失敗或通過捆憎、執(zhí)行所需的時間、運行測試用例所需的步驟等細節(jié)梭纹。
9. RIDE
????這個與Robot framework一起提供的編輯器有助于編寫和運行測試用例躲惰。該編輯器非常容易安裝和使用。RIDE通過提供特定于框架的代碼完成栗柒、語法高亮等功能礁扮,使得編寫測試用例變得非常簡單。項目的創(chuàng)建瞬沦,測試套件太伊,測試用例,關鍵字逛钻,變量僚焦,導入庫,執(zhí)行曙痘,標記測試用例在編輯器中很容易完成芳悲。Robot framework還提供了eclipse立肘、sublime、Textmate名扛、Pycharm等插件谅年,這些插件支持于測試用例。
三. RF優(yōu)勢
????Robot framework是開源的肮韧,所以任何想嘗試的人都可以輕松地做到這一點融蹂。
它非常容易安裝,并且有助于創(chuàng)建和執(zhí)行測試用例弄企。任何新來者都可以很容易地理解超燃,并且不需要任何高水平的測試知識就可以開始使用機器人框架。
它支持關鍵字驅動拘领、行為驅動和數(shù)據(jù)驅動的測試用例編寫風格意乓。
它對外部庫的良好支持。最常用的是Selenium庫约素,它在robotframework中易于安裝和使用届良。
四. RF限制
????Robot缺乏對if-else、嵌套循環(huán)的支持业汰,當代碼變得復雜時需要這些嵌套循環(huán)伙窃。
五.后記
????后續(xù)會不定期發(fā)布RF由淺入深的系列文章,敬請期待样漆,如有不正之處为障,請各位讀者指正,謝謝放祟!