【接口測(cè)試框架】ApiTestForHttp(1)- 如何開展一個(gè)項(xiàng)目的接口測(cè)試

大家好悲关,我是金魚座谎僻,一個(gè)走在測(cè)試領(lǐng)域這片藍(lán)海中, 蹉跎前行的技術(shù)渣渣寓辱,唯有一直走下去艘绍,也許能改變點(diǎn)什么,加油秫筏!

前面對(duì)小框架做了基本上介紹诱鞠,下面來說明下如何使用apitestforhttp來開展一個(gè)項(xiàng)目的接口測(cè)試呢挎挖?

項(xiàng)目目錄篇:

image.png

如上圖所示主要包含以下結(jié)構(gòu)和內(nèi)容

  1. project 項(xiàng)目根目錄
  2. InitConf.ini 項(xiàng)目配置文件
  3. test_xxxxx.json 實(shí)際的測(cè)試json文件
    一般情況下,登錄成功的腳本case一般需要房子project的目錄下航夺,這樣可以優(yōu)先登錄成功并提取相關(guān)登錄信息給其他依賴權(quán)限的接口使用

初始化配置篇

image.png
  1. 如果存在多數(shù)據(jù)庫蕉朵,需要在配置文件中,如上圖所示按照DB1 DB2 DB3來進(jìn)行設(shè)置

json編寫篇

     {
     "name": "login_commuity_with_jack_中文",
     "setup": {
        "num1": 123,
        "str1": "anc",
        "fun1": "${__get_value(a=1, b=2)}",
        "fun2": "${__get_value('success')}",
        "str2": "jack2${str1}",
        "fun3": "${__get_value(${num1}, '${str1}', '${str2}')}",   # 注意1  方法參數(shù)化如果入?yún)⑹亲址羝枰觾蓚€(gè)單引號(hào)
        "path": "E:\\jackstudy\\test\\test_params.py",
        "dict": {"a":"${str1}"},
        "dict-list": {
          "c" : "-${num1}" ,   # 注意2  對(duì)于字典或者列表中某一個(gè)value需要獲取某一個(gè)int值轉(zhuǎn)為str類型顯示時(shí)始衅,在前面加“-” or “~”
          "a": "${num1}", # 注意4 對(duì)于字段為非確定數(shù)據(jù)類型, a會(huì)獲取num1的自帶int類型锚烦,b會(huì)自動(dòng)獲取str1中的str類型
          "b": "${str1}",
          "c": "abc${num1}",
          "areaCodes": ["${num1}","${str1}","abc${num1}"],
          "street": {"aa": "${num1}","bb": "${str1}"}
        },
        "list": ["A${num1}", 2]            # 注意3  對(duì)于字典或者列表中某一個(gè)value中部分需要獲取某一個(gè)int值轉(zhuǎn)為str類型顯示觅闽,框架會(huì)自動(dòng)判斷進(jìn)行合并

     },

     "requestor":{
        "url": "${host}/mccemv/mgr/api/auth/login",
        "method": "POST",
        "headers": {"Content-Type": "application/json"},
       "data": "${dict-list}",
       "files":{"image":"${path}"}
     },

     "validator": {
       "assertEqCode": 299,
       "assertEqHeaders": {"Content-Type": "application/json;charset=UTF-8"},
       "assertEqStr": ["100000"],
       "assertEqJson":{"success":true}
     },

     "collector":{
       "json": {"token": "response.data.token"},
       "methods": {"deleteid": "${__sql_select('${sql}', '${confpath}')}"},
       "values":{"deleteid2": "${num1}"}
     },

     "teardown":{
       "clear_cookies": "clearcookies",
       "clearsession": "clearsession",
       "cleartoken": "cleartoken"
     }
   }

參數(shù)化原則:
1 對(duì)于參數(shù)化后非確定類型,必須進(jìn)行類型轉(zhuǎn)換時(shí)涮俄, 需要在參數(shù)化標(biāo)記$前增加一個(gè)“”-“” - 參考注意2
2 對(duì)于字典或者列表字段為str類型時(shí)蛉拙,不需要做類型轉(zhuǎn)換,框架會(huì)自動(dòng)完成 - 參考注意3
3 對(duì)于字典或者列表中字段值為非確定數(shù)據(jù)類型彻亲,參數(shù)會(huì)保留參數(shù)化字段的原有type進(jìn)行替換 - 參考注意4
4 對(duì)于方法類的str類型進(jìn)行參數(shù)化時(shí)孕锄,需要人工確定傳值是數(shù)值還是字符串,如果是字符串需要人工增加單引號(hào) - 參考注意1

框架執(zhí)行篇

命令行模式
image.png

執(zhí)行整個(gè)項(xiàng)目: python3 api_test.py -p E:\jackstudy\ApiTestForHttp\data\project

執(zhí)行單個(gè)文件:python3 api_test.py -p E:\test_.json -cf E:\data\conf

報(bào)告生成篇

通過命令行執(zhí)行報(bào)告后苞尝,查看執(zhí)行窗口報(bào)告生成情況畸肆,如下圖


image.png

框架report目錄下報(bào)告如下:


image.png

歡迎各位體驗(yàn),體驗(yàn)入口:https://github.com/jackyin2/ApiTestForHttp

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末宙址,一起剝皮案震驚了整個(gè)濱河市轴脐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌抡砂,老刑警劉巖大咱,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異注益,居然都是意外死亡碴巾,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門丑搔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來厦瓢,“玉大人,你說我怎么就攤上這事啤月≈蟪穑” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵谎仲,是天一觀的道長(zhǎng)欺抗。 經(jīng)常有香客問我,道長(zhǎng)强重,這世上最難降的妖魔是什么绞呈? 我笑而不...
    開封第一講書人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任贸人,我火速辦了婚禮,結(jié)果婚禮上佃声,老公的妹妹穿的比我還像新娘艺智。我一直安慰自己,他們只是感情好圾亏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開白布十拣。 她就那樣靜靜地躺著,像睡著了一般志鹃。 火紅的嫁衣襯著肌膚如雪夭问。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評(píng)論 1 305
  • 那天曹铃,我揣著相機(jī)與錄音缰趋,去河邊找鬼。 笑死陕见,一個(gè)胖子當(dāng)著我的面吹牛秘血,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播评甜,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼灰粮,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了忍坷?” 一聲冷哼從身側(cè)響起粘舟,我...
    開封第一講書人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎佩研,沒想到半個(gè)月后柑肴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡韧骗,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了零聚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袍暴。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖隶症,靈堂內(nèi)的尸體忽然破棺而出政模,到底是詐尸還是另有隱情,我是刑警寧澤蚂会,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布淋样,位于F島的核電站,受9級(jí)特大地震影響胁住,放射性物質(zhì)發(fā)生泄漏趁猴。R本人自食惡果不足惜刊咳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望儡司。 院中可真熱鬧娱挨,春花似錦、人聲如沸捕犬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽碉碉。三九已至柴钻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間垢粮,已是汗流浹背贴届。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留足丢,地道東北人炕置。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓辫愉,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子牛哺,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

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