麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開(kāi)發(fā) > Python > 正文

Python + Requests + Unittest接口自動(dòng)化測(cè)試實(shí)例分析

2024-09-09 19:03:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了Python + Requests + Unittest接口自動(dòng)化測(cè)試。分享給大家供大家參考,具體如下:

1. 介紹下python的requests模塊

Python Requests快速入門(mén) :http://cn.python-requests.org/zh_CN/latest/

想必會(huì)Python基礎(chǔ)的小伙伴們一看就懂了

2. Requests接口自動(dòng)化測(cè)試:

2.1 如何利用這么利器進(jìn)行接口測(cè)試,請(qǐng)看小demo:

# -*- coding:utf-8 -*import requestsdef test():  url = "http://120.24.239.**:9080/user/app/get_sys_time.do" #測(cè)試的接口url  headers = {'content-type': 'application/json'}  r = requests.get(url=url, headers=headers)  return r.json()if __name__ == "__main__":  test()

在進(jìn)行接口測(cè)試的過(guò)程中對(duì)傳入的參數(shù)進(jìn)行邊界值測(cè)試、錯(cuò)誤推導(dǎo)測(cè)試、等價(jià)類(lèi)測(cè)試等測(cè)試方法進(jìn)行測(cè)試。有時(shí)安全性考慮,會(huì)在請(qǐng)求接口url上添加session的東東,這個(gè)時(shí)候不怕,直接把登錄接口返回碼中的session提取出來(lái),放在post請(qǐng)求的header里,例如:

# -*- coding:utf-8 -*import requestsdef test():  url = "http://120.24.239.**:9080/user/app/login.do" #登錄的接口  headers = {'content-type': 'application/json'}  r = requests.get(url=url, headers=headers)  return r.json()def test_have_session(url):  cookie = "JSESSIONID=" + "".join(test().get("JSESSIONID")) #利用登錄接口獲取JSESSIONID  headers = {'content-type': 'application/xml', 'Cookie': cookie}  r = requests.post(url, headers=headers)  return r.json()if __name__ == "__main__":  url = ""  #測(cè)試的接口url  test_have_session(url)

2.2 做完所有接口的接口測(cè)試后,就要編寫(xiě)接口自動(dòng)化了,不可能開(kāi)發(fā)每次去修改接口你又得手動(dòng)的去測(cè)試一遍,特別是產(chǎn)品上線了,需要到所有的接口進(jìn)行一遍測(cè)試,這個(gè)時(shí)候有了接口自動(dòng)化就方便多了,接下來(lái)看下一個(gè)縮減版的接口自動(dòng)化測(cè)試demo:

# -*- coding:utf-8 -*# 測(cè)試報(bào)告郵件內(nèi)容text = ""# 用例統(tǒng)計(jì)num_success = 0num_fail = 0# 測(cè)試通過(guò)def test_success():  global num_success  num_success += 1  print_out(u"測(cè)試結(jié)果:通過(guò)/n")# 測(cè)試不通過(guò)def test_fail(txt):  global num_fail  num_fail += 1  print_out(u"測(cè)試結(jié)果:不通過(guò) /n錯(cuò)誤信息: " + txt + "/n")# 郵件內(nèi)容寫(xiě)入 & 客戶(hù)端輸出def print_out(message):  global text  text += "/n" + message  print message# 返回值判斷def test_result(result, code):  if result.get("status") == code:    test_success()    return "pass"  else:    txt = u"期望返回值:" + str(code) + u" 實(shí)際返回值:" + str(result.get("status"))    test_fail(txt)    return "fail"

def test_interface():  # 初始化測(cè)試起始時(shí)間  start_time = datetime.datetime.now()  # 構(gòu)造測(cè)試集  suite = unittest.TestSuite()  suite.addTest(MyTestSuite("test_login"))  # 登陸  suite.addTest(MyTestSuite("test_employees")) # 員工管理  suite.addTest(MyTestSuite("test_department")) # 部門(mén)管理  suite.addTest(MyTestSuite("test_work_sys")) # 工作日歷管理  suite.addTest(MyTestSuite("test_holiday")) # 節(jié)假日管理  suite.addTest(MyTestSuite("test_queryAp")) # 智能終端管理  suite.addTest(MyTestSuite("test_edit_info")) # 企業(yè)信息管理 & 個(gè)人信息  suite.addTest(MyTestSuite("test_data")) # 每日數(shù)據(jù)報(bào)表 & 月度數(shù)據(jù)報(bào)表  # 執(zhí)行測(cè)試  runner = unittest.TextTestRunner()  runner.run(suite)  # 測(cè)試執(zhí)行時(shí)間計(jì)算  end_time = datetime.datetime.now()  total_use_case = u"執(zhí)行用例總數(shù):" + str(num_success + num_fail) + /           u"/t通過(guò)數(shù):" + str(num_success) + /           u"/t不通過(guò)數(shù):" + str(num_fail)  total_time = u"/t總共耗時(shí):" + str((end_time-start_time).seconds) + u"秒"  print_out(total_use_case + total_time)  # 發(fā)生郵件測(cè)試報(bào)告  Send_email.send_email(text)
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 免费观看视频在线 | 色啪综合 | 亚洲第一成人久久网站 | 国产精品久久久免费看 | 国产精品成人av片免费看最爱 | 污视频在线免费播放 | 激情小说另类 | 在线播放一级片 | 欧美日韩亚洲国产精品 | 一级电影在线观看 | 91成人免费网站 | 亚洲人成网站免费播放 | 国产精品午夜一区 | 久草成人在线观看 | 久久国产精品久久久久久电车 | 久久av免费 | 久久福利小视频 | chinese中国真实乱对白 | 蜜桃一本色道久久综合亚洲精品冫 | 91久久夜色精品国产网站 | 一级黄色大片在线观看 | 国产日韩三区 | 羞羞羞网站 | 成年人激情在线 | 国产精品视频二区不卡 | 国产三级国产精品国产普男人 | 羞羞视频免费观看网站 | 日本精品久久久一区二区三区 | 欧美日韩夜夜 | 91短视频在线播放 | 国内精品免费一区二区2001 | 奇米888一区二区三区 | 久久千人斩 | 九色中文| 久久精品亚洲一区二区三区观看模式 | 视频一区二区三区在线播放 | 免费毛片在线视频 | 免费国产视频在线观看 | 亚洲av一级毛片特黄大片 | mmmwww| 亚洲第一成人在线 |