def get_request(url, params=None, headers=None, cookies=None): """ Get请求 :param url: :param data: :param header: :return: """ if not (url.startswith('http://') or url.startswith('https://')): url = '%s%s' % ('http://', url) print(url) try: response = requests.get(url=url, params=params, headers=headers, cookies=cookies) except requests.RequestException as e: log_tool.error('%s%s' % ('Exception url: ', url)) log_tool.error(e) return () except Exception as e: log_tool.error('%s%s' % ('Exception url: ', url)) return () time_consuming = response.elapsed.microseconds / 1000 log_tool.info('----请求用时: %s 秒数' % time_consuming) return response
def put_request(url, data, header=None, cookies=None): """ Put请求 :param url: :param data: :param header: :return: """ if not (url.startswith('http://') or url.startswith('https://')): url = '%s%s' % ('http://', url) log_tool.debug(url) try: if data is None: response = requests.put(url=url, headers=header, cookies=cookies) else: response = requests.put(url=url, params=data, headers=header, cookies=cookies) except requests.RequestException as e: log_tool.error('%s%s' % ('RequestException url: ', url)) log_tool.error(e) return () except Exception as e: print('%s%s' % ('Exception url: ', url)) print(e) return () time_consuming = response.elapsed.microseconds / 1000 log_tool.info('----请求用时: %s 秒数' % time_consuming) return response
def _func(*args, **kwargs): r = func(*args, **kwargs) request = "-------------------request-------------" \ "\n{0}\n{1}\n{2}".format(r.url,string_tool.dic_to_str(r.request.headers),r.request.body) log_tool.info(request) response = "---------------response----------------" \ "\n{0}\n{1}\n{2}".format(r.status_code,string_tool.dic_to_str(r.headers),r.text) log_tool.info(response) allure.attach(request, 'request', allure.attachment_type.TEXT) allure.attach(response, 'response', allure.attachment_type.TEXT) return r
def d(): # 用户登录 json = {"pwd": "VzuT98XI", "userName": "******"} r = requests.request("POST", BASE_URL + "/login", json=json) token = r.json()["data"]["token"] log_tool.info("-------------------用户登录(请求)-------------------" + STR_REQUEST.format(r.request.method, r.request.url, r.request.headers, r.request.body)) log_tool.info("-------------------用户登录(响应)-------------------" + STR_RESPONSE.format(r.status_code, r.headers, r.text)) try: assert "2000" in r.text except: log_tool.error(r.text) print(r.text) return {"pwd": "VzuT98XI", "name": "pafef09020", "token": token}
def test_lock_t(d): data = {"userName": d["name"]} token = {"token": d["token"]} r = requests.request("POST", BASE_URL + "/user/lock", data=data, headers=token) log_tool.info("-------------------冻结用户test_lock_t(请求)-------------------" + STR_REQUEST.format(r.request.method, r.request.url, r.request.headers, r.request.body)) log_tool.info("-------------------冻结用户test_lock_t(响应)-------------------" + STR_RESPONSE.format(r.status_code, r.headers, r.text)) print(r.text) try: assert "2000" in r.text except: log_tool.error(r.text)
def post_request(url, data=None, files=None, params=None, headers=None, json=None, cookies=None): """ Post请求 :param url: :param data: :param header: :return: """ if not (url.startswith('http://') or url.startswith('https://')): url = '%s%s' % ('http://', url) print(url) try: response = requests.post(url, data=data, files=files, params=params, headers=headers, json=json, cookies=cookies) except requests.RequestException as e: log_tool.error('%s%s' % ('RequestException url: ', url)) log_tool.error(e) return () except Exception as e: log_tool.error('%s%s' % ('Exception url: ', url)) log_tool.error(e) return () # time_consuming为响应时间,单位为毫秒 time_consuming = response.elapsed.microseconds / 1000 log_tool.info('----请求用时: %s 秒数' % time_consuming) return response
def post_request_multipart(url, files=None, headers=None, cookies=None): """ 提交Multipart/form-data 格式的Post请求 :param url: :param data: :param header: :param file_parm: :param file: :param type: :return: """ if not (url.startswith('http://') or url.startswith('https://')): url = '%s%s' % ('http://', url) print(url) response = requests.post(url=url, files=files, headers=headers, cookies=cookies) # time_consuming为响应时间,单位为毫秒 time_consuming = response.elapsed.microseconds / 1000 log_tool.info('----请求用时: %s 秒数' % time_consuming) return response
def test__product_addProd(d): brand = random_tool.random_numbers() colors = random_tool.random_color() json = { "brand": "huawei"+brand, "colors": colors, "price": 0, "productCode": "string", "productName": "string", "sizes": ["string"], "type": "string" } token = {"token":d["token"]} r = requests.request("POST",BASE_URL + "/product/addProd",json = json,headers = token) print(r.request.body) log_tool.info("-------------------增加商品test__product_addProd(请求)-------------------" + STR_REQUEST.format(r.request.method, r.request.url, r.request.headers, r.request.body)) log_tool.info("-------------------增加商品test__product_addProd(响应)-------------------" + STR_RESPONSE.format(r.status_code, r.headers, r.text)) print(r.text) try: assert "2000" in r.text except: log_tool.error(r.text)
def test_changepwd_t(d): json = { "newPwd": d["pwd"], "oldPwd": d["pwd"], "reNewPwd": d["pwd"], "userName": d["name"] } token = {"token": d["token"]} r = requests.request("POST", BASE_URL + "/user/changepwd", json=json, headers=token) log_tool.info( "-------------------修改密码test_changepwd_t(请求)-------------------" + STR_REQUEST.format(r.request.method, r.request.url, r.request.headers, r.request.body)) log_tool.info( "-------------------修改密码test_changepwd_t(响应)-------------------" + STR_RESPONSE.format(r.status_code, r.headers, r.text)) print(r.text) try: assert "2000" in r.text except: log_tool.error(r.text)