国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Python接口測試文件上傳實例解析

瀏覽:99日期:2022-07-24 16:55:18

接口測試中,上傳文件的測試場景非常常見。例如:上傳頭像(圖片)、上傳文件、上傳視頻等。下面以一個上傳圖片的例子為大家講解如何通過 python 測試上傳文件接口。

首先通過抓包分析上傳文件接口的請求參數(shù):

Python接口測試文件上傳實例解析

下面是上傳文件接口腳本。把目標文件以open打開,然后存儲到變量file。并且使用files參數(shù)指明請求的參數(shù)名稱、上傳文件的類型、以及上傳文件的路徑。

Python接口測試文件上傳實例解析

這里注意:content-type參數(shù),如果我們通過form-data的方式上傳文件,我們發(fā)送post請求的時候,headers這個參數(shù)中一定不能要包括這個值,,requests庫會幫忙添加這個元素,加了可能會報錯。

代碼實現(xiàn):

import requestsfrom utils.LogUtil import my_logfrom faker import Fakerlog=my_log()faker = Faker(’zh_CN’)class marketCreate(): def loginToken(self,mobile,code): ’’’ 登陸、注冊接口 :param mobile: 手機號 :param code: 驗證碼 :return: ’’’ url=’http://api.xxxxxx.net/v1/user/loginOrRegister’ #登陸接口請求地址 headers={’Content-Type’: ’application/json’} #請求頭信息,json數(shù)據(jù)類型 json={'code':code,'deviceId':'5de548ad0e268bc0','deviceName':'HWNXT','mobile':mobile,'mobilePrefix':'63','version':'39'} #請求數(shù)據(jù) r=requests.post(url,headers=headers,json=json) #發(fā)送請求 token=r.json()[’data’][’userVO’][’token’] #獲取token log.info(’手機號’+mobile+’的token值為:’+token) #打印日志 return token #將token返回出去 def uploadimages(self,mobile,file_path,filename): ’’’ 上傳圖片接口 :param mobile: 手機號 :param file_path: 文件路徑 :param filename: 文件名稱 :return: ’’’ token = self.loginToken(mobile=mobile, code=’789789’) #請求登陸接口,獲取token url=’http://api.xxxxxx.net/v1/upload/images’#上傳文件接口請求地址 headers={’token’: token} #請求頭信息關聯(lián)token。不需要賦值Content-Type,requests庫會幫忙添加這個元素,加了可能會報錯。 file_data={’file’:(filename,open(file_path,’rb’),’image/jpeg’)} #重點:上傳文件請求數(shù)據(jù)。 r=requests.post(url=url,headers=headers,files=file_data) #發(fā)送請求 print(r.json()) #打印響應結果if __name__ == ’__main__’: m=marketCreate() # 測試,輸入手機號、文件地址、文件名稱信息; m.uploadimages(mobile=’639266558329’,file_path=’D:pyCharm_workcmkjProjectdatamarket.jpg’,filename=’123456.jpg’)

執(zhí)行結果:

C:Python38python.exe D:/pyCharm_work/cmkjProject/page/marketPage.py2020-01-02 13:48:09,580-D:pyCharm_workcmkjProjectutilsLogUtil.py-INFO-手機號639266558329的token值為:ba9b4f622fa4d6461523870c0d00df46{’code’: 0, ’data’: ’/group1/M00/00/00/rBDKPF4NhE-ABIFmAAGhT9tm-NA158.jpg’, ’success’: True}Process finished with exit code 0

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 本溪| 海丰县| 峨眉山市| 徐水县| 延寿县| 建水县| 五寨县| 喀什市| 潼关县| 武川县| 东台市| 中山市| 邵东县| 剑河县| 彝良县| 昆明市| 兴文县| 翼城县| 西昌市| 万全县| 竹溪县| 天津市| 射阳县| 宝丰县| 吉木萨尔县| 抚顺县| 沂南县| 扎赉特旗| 漯河市| 郧西县| 泊头市| 安阳县| 沾化县| 芷江| 开封县| 衡阳市| 澎湖县| 武宁县| 卢湾区| 东乡县| 明溪县|