mirror of
https://github.com/httprunner/httprunner.git
synced 2026-06-06 00:09:37 +08:00
Merge pull request #272 from RockFeng0/master
extract关键字中,支持在跳转请求中获取cookie
This commit is contained in:
@@ -6,6 +6,7 @@ import re
|
|||||||
from httprunner import exception, logger, testcase, utils
|
from httprunner import exception, logger, testcase, utils
|
||||||
from httprunner.compat import OrderedDict, basestring
|
from httprunner.compat import OrderedDict, basestring
|
||||||
from requests.structures import CaseInsensitiveDict
|
from requests.structures import CaseInsensitiveDict
|
||||||
|
from requests.models import PreparedRequest
|
||||||
|
|
||||||
text_extractor_regexp_compile = re.compile(r".*\(.*\).*")
|
text_extractor_regexp_compile = re.compile(r".*\(.*\).*")
|
||||||
|
|
||||||
@@ -95,7 +96,11 @@ class ResponseObject(object):
|
|||||||
# TODO: remove compatibility for content, text
|
# TODO: remove compatibility for content, text
|
||||||
if isinstance(top_query_content, bytes):
|
if isinstance(top_query_content, bytes):
|
||||||
top_query_content = top_query_content.decode("utf-8")
|
top_query_content = top_query_content.decode("utf-8")
|
||||||
top_query_content = json.loads(top_query_content)
|
|
||||||
|
if isinstance(top_query_content, PreparedRequest):
|
||||||
|
top_query_content = top_query_content.__dict__
|
||||||
|
else:
|
||||||
|
top_query_content = json.loads(top_query_content)
|
||||||
except json.decoder.JSONDecodeError:
|
except json.decoder.JSONDecodeError:
|
||||||
err_msg = u"Failed to extract data with delimiter!\n"
|
err_msg = u"Failed to extract data with delimiter!\n"
|
||||||
err_msg += u"response content: {}\n".format(self.content)
|
err_msg += u"response content: {}\n".format(self.content)
|
||||||
|
|||||||
@@ -178,7 +178,7 @@ class Runner(object):
|
|||||||
extractors = testcase_dict.get("extract", []) or testcase_dict.get("extractors", [])
|
extractors = testcase_dict.get("extract", []) or testcase_dict.get("extractors", [])
|
||||||
extracted_variables_mapping = resp_obj.extract_response(extractors)
|
extracted_variables_mapping = resp_obj.extract_response(extractors)
|
||||||
self.context.bind_extracted_variables(extracted_variables_mapping)
|
self.context.bind_extracted_variables(extracted_variables_mapping)
|
||||||
|
|
||||||
# validate
|
# validate
|
||||||
validators = testcase_dict.get("validate", []) or testcase_dict.get("validators", [])
|
validators = testcase_dict.get("validate", []) or testcase_dict.get("validators", [])
|
||||||
try:
|
try:
|
||||||
|
|||||||
Reference in New Issue
Block a user