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對象。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,967評論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,273評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,870評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,742評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,527評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,010評論 1 322
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,108評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,250評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,769評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,656評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,853評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,371評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,103評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,472評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,717評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,487評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,815評論 2 372

推薦閱讀更多精彩內容