今天來(lái)跟大家來(lái)講解一下我自己寫的一個(gè)python+requests接口自動(dòng)化的腳本框架宙拉,具體的講解如下:
一、包的引入谢澈,主要引入三個(gè)包
import requests
import json
import unittest
二、把接口封裝成一個(gè)類
class test_login_post(unittest.TestCase): #把這個(gè)接口封裝一個(gè)類牛郑,下面的方法是具體的測(cè)試用例
? ? ''':員工登錄'''? ? #這個(gè)描述接口名稱
? ? def setUp(self):? #接口請(qǐng)求的基礎(chǔ)參數(shù)設(shè)置
self.base_url = "http://192.168.1.211:8990/v1/login/"? #請(qǐng)求的基礎(chǔ)連接
self.verificationErrors = []
self.accept_next_alert = True
def test_login_001(self):? ? ? ? #定義一個(gè)測(cè)試用例 ''':員工登錄場(chǎng)景1'''?
#這個(gè)描述接口用例名稱
self.url =
self.base_url+"customerAccount/loginByPwd"? ? ? #請(qǐng)求的鏈接
self.headers = {"Content-Type": "application/json"}? ? #請(qǐng)求的頭部定義
self.data ={? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #請(qǐng)求的body內(nèi)容
? "mobile": 13627906839,
? "password":123456
}
r = requests.post(url=self.url, json=self.data, headers=self.headers)? ? #接口請(qǐng)求的封裝
print (r.text)
print (r.status_code)
if r.status_code == 200:? ? ? ? ? #接口請(qǐng)求返回校驗(yàn)部分
r.encoding = r.apparent_encoding
results = json.loads(r.text)
# 預(yù)期結(jié)果與實(shí)際結(jié)果校驗(yàn)敬鬓,調(diào)用result_statistics模塊
self.assertEqual(results["code"],0)
self.assertEqual(results["message"],"success")
? ? ? ? pass
? ? ? ? else:
print "http error info:%s" % r.status_code? ? ? ? ? #錯(cuò)誤內(nèi)容打印
? # self.fail("test error")
def tearDown(self):
? ? self.assertEqual([],
self.verificationErrors
if __name__ == "__main__":
? unittest.main()