AppOrderSubmit.py
2.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/8/12 下午5:35
# @Author : 付孟奇
import unittest, requests
from config.vendorHost import vendor_host
from config.vendorPath import order_mp4_path, order_zip_path
from util.generate import getTestCase
from util.log import logger
from util.HandleJson import file_read_global, file_readAPI
import warnings
class AppOrderSubmit(unittest.TestCase):
def testFunc(self):
'''订单视频提交'''
warnings.simplefilter('ignore', ResourceWarning)
data_list = getTestCase('A_api_case.xlsx', '视频上传')
for i in range(len(data_list)):
self.getTest(data_list[i])
def getTest(self, data):
tcname = data['tc_name']
code = int(data['code'])
api_type = 're'
logger.info('********************【' + tcname + '】接口测试开始!' + '********************')
headers = {
'X-Auth-Token': file_read_global('app_login', 'token'),
}
# multipart_encoder = MultipartEncoder(
# fields={
# "videoUrl": "public-staging-bucket/metlife/video/20210818/12a3cbc1f9d44f269bb9421bb2076a3e.mp4",
# "jsonData": ("json.txt", open(order_mp4_path, 'rb'), "video/mp4"),
# 'imageData': ("images.zip", open(order_zip_path, 'rb'), "application/zip")
# },
# # 自定义分隔符
# boundary='wfWiEWrgEFA9A78512weF7106A'
# )
#
# # 后给Content-Type加入属性
# headers['Content-Type'] = multipart_encoder.content_type
payload = {'videoUrl': 'public-staging-bucket/metlife/video/20210818/12a3cbc1f9d44f269bb9421bb2076a3e.mp4'}
files = [
('jsonData', ('json.txt',
open(order_mp4_path, 'rb'), "video/mp4")),
('imageData', ('images.zip',
open(order_zip_path, 'rb'), "application/zip")),
]
url = vendor_host + api_type + file_readAPI(api_type, 'orderSubmitUsingPOST')
# url = r'http://192.168.10.190:9000/re' + file_readAPI(api_type, 'orderSubmitUsingPOST')
# response = requests.post(url=url, data=multipart_encoder, headers=headers)
response = requests.post(url, headers=headers, data=payload, files=files)
if response.status_code is 200:
res = response.json()
self.assertEqual(res['code'], code, msg=str(res))
logger.info('【' + tcname + '】的接口返回参数为:' + str(res))
else:
logger.info(response.text)