robotframework-自動化測試-實例6(GET/POST請求)

前情介紹:
自動化測試有時候從UI層面上不好定位元素的時候溃斋,通常會采取用模擬請求的方式來進行測試,也就是我們通常所說的接口測試吸申。

練習環(huán)境配置
實例1(UI自動化-百度搜索)
實例2(有效登錄)
實例3(無效登錄)
實例4 (Appium)
實例5 (連接mysql數(shù)據(jù)庫)
Appium Error總結
robotframework Error總結

針對于GET/POST請求,RF的實現(xiàn)首推requestsLibrary和requests庫享甸。


requestsLibrary截碴、requests安裝
前面介紹了pip安裝,如果pip不好用或者網(wǎng)絡不好的同學蛉威,可以本地安裝日丹,到下面官網(wǎng)下載進行手動安裝。
requests的官方下載地址: https://pypi.python.org/pypi/requests

requestsLibrary的官方下載地址: https://pypi.python.org/pypi/robotframework-requests/

如果是下載tar.gz包安裝蚯嫌,先要安裝requests哲虾,再安裝requestsLibrary


測試需求:
想驗證用不同的測試數(shù)據(jù),登錄功能是否是否成功

測試設計:
之前是通過UI上來輸入數(shù)據(jù)的方式來實現(xiàn)的择示,這一次我們嘗試用GET或者POST方式

測試實現(xiàn)
1 . 用Httpwatch或者fiddler等工具來抓取smeoa系統(tǒng)登錄時候的數(shù)據(jù)包束凑,查看需要的地址和參數(shù)

login.png

2 . 使用requestslibrary庫里的post request請求來完成登錄。(為了實現(xiàn)不同的數(shù)據(jù)測試登錄栅盲,將username和password參數(shù)化)

postrequest.png

3 . 登錄功能實際的輸入就是username和password汪诉,輸出為不同的提示信息,依據(jù)這一思想谈秫,可以把登錄部分的這個操作抽離出來作為一個關鍵字扒寄。

result.png

4 . 在測試用例層導入這個包含有關鍵字login的resource。

resource.png

5 . 分別編寫不同的測試用例來輸入不同的數(shù)據(jù)拟烫。

valid.png

比如上圖中的測試用例就是用來做正常的登錄測試的该编。

最終實現(xiàn)代碼可參考:

*** Settings ***
Resource          action.txt
Library           RequestsLibrary

*** Test Cases ***
validlogin
    login    admin    admin    退出

Invalid username
    login    admin123    admin    帳號或密碼錯誤!

Invalid password
    login    admin    admin123    帳號或密碼錯誤硕淑!

Invalid both
    login    admin1    admin13    帳號或密碼錯誤课竣!

visithome
    Create Session    home    http://localhost
    ${addr}    Get request    home    /smeoa/index.php?m=login&a=index
    should be equal as strings    ${addr.status_code}    200

*** Keywords ***
login
    [Arguments]    ${username}    ${password}    ${expect}
    ${headers}    create dictionary    Content-Type=application/x-www-form-urlencoded
    ${param}    create dictionary    emp_no=${username}    password=${password}
    create session    api    http://localhost
    ${addr}    post request    api    /smeoa/index.php?m=login&a=check_login    data=${param}    headers=${headers}
    should be equal as strings    ${addr.status_code}    200
    ${content}    set variable    ${addr.content.decode('utf-8')}
    should contain    ${content}    ${expect}

參考 RequestsLibrary庫里的關鍵詞(可以F5直接查看)

requestslibrary.png

常用的:(RF里面對每一個自提供的關鍵字都有很詳細的介紹,F(xiàn)5以后可以盡情查看喜颁,好多時候只是大家用錯了參數(shù)而已)
Create Session: 創(chuàng)建一個session稠氮,連接某個服務器。

Create Ntlm Session: 也是創(chuàng)建一個session半开,只不過加上了域隔披、用戶名、密碼用于NTLM認證寂拆。
Get Request: 通過GET方式發(fā)起請求奢米。
Post Request: 通過POST方式發(fā)起請求抓韩。
Head Request: 發(fā)送一個HEAD請求。
TO Json: 將文本轉換成json對象鬓长。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末谒拴,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子涉波,更是在濱河造成了極大的恐慌英上,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件啤覆,死亡現(xiàn)場離奇詭異苍日,居然都是意外死亡,警方通過查閱死者的電腦和手機窗声,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門相恃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人笨觅,你說我怎么就攤上這事铸磅∥壬悖” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長界轩。 經(jīng)常有香客問我规个,道長玄窝,這世上最難降的妖魔是什么奕塑? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮柒啤,結果婚禮上倦挂,老公的妹妹穿的比我還像新娘。我一直安慰自己担巩,他們只是感情好方援,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著涛癌,像睡著了一般犯戏。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拳话,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天先匪,我揣著相機與錄音,去河邊找鬼弃衍。 笑死呀非,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播岸裙,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼猖败,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了降允?” 一聲冷哼從身側響起恩闻,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎剧董,沒想到半個月后幢尚,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡翅楼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年侠草,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片犁嗅。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖晤碘,靈堂內(nèi)的尸體忽然破棺而出褂微,到底是詐尸還是另有隱情,我是刑警寧澤园爷,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布宠蚂,位于F島的核電站,受9級特大地震影響童社,放射性物質發(fā)生泄漏求厕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一扰楼、第九天 我趴在偏房一處隱蔽的房頂上張望呀癣。 院中可真熱鬧,春花似錦弦赖、人聲如沸项栏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽沼沈。三九已至,卻和暖如春币厕,著一層夾襖步出監(jiān)牢的瞬間列另,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工旦装, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留页衙,地道東北人。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓同辣,卻偏偏與公主長得像拷姿,于是被迫代替她去往敵國和親惭载。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354

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

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理响巢,服務發(fā)現(xiàn)描滔,斷路器,智...
    卡卡羅2017閱讀 134,654評論 18 139
  • 22年12月更新:個人網(wǎng)站關停踪古,如果仍舊對舊教程有興趣參考 Github 的markdown內(nèi)容[https://...
    tangyefei閱讀 35,182評論 22 257
  • 前情介紹:接口測試通常是系統(tǒng)之間交互的接口含长,或者某個系統(tǒng)對外提供的一些接口服務,目前公司里大部分的接口都是REST...
    CC先生之簡書閱讀 14,879評論 0 9
  • 大千世界無奇不有,之前聽說過太多一夫多妻的奇葩傳統(tǒng),而今天看到了女王谷的女人竟然可以嫁多夫,真實感到不可思議. 這...
    OOS閱讀 382評論 0 1
  • 大部分職場“圣經(jīng)”都表明要想在職場上受人歡迎枕扫,應該遵守這些職場“黃金法則”:比如低調做人陪腌,高調做事;嘴笨沒關系烟瞧,只...
    你必須要好閱讀 668評論 2 0