From 4cd12e3d2fd2ba1d27beb24af0ef20f04f3ace8d Mon Sep 17 00:00:00 2001 From: debugtalk Date: Wed, 25 Dec 2019 23:21:10 +0800 Subject: [PATCH] fix: display validators in report when validate raised exception --- docs/CHANGELOG.md | 10 ++++++++++ httprunner/__init__.py | 2 +- httprunner/runner.py | 10 +++++----- pyproject.toml | 2 +- 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 6fb2d697..acf41ab2 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,5 +1,15 @@ # Release History +## 2.4.9 (2019-12-25) + +**Added** + +- test: add unittest for cli + +**Fixed** + +- fix: display validators in report when validate raised exception + ## 2.4.8 (2019-12-25) **Added** diff --git a/httprunner/__init__.py b/httprunner/__init__.py index 1766552f..13d3adf4 100644 --- a/httprunner/__init__.py +++ b/httprunner/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2.4.8" +__version__ = "2.4.9" __description__ = "One-stop solution for HTTP(S) testing." __all__ = ["__version__", "__description__"] diff --git a/httprunner/runner.py b/httprunner/runner.py index 86804722..b2d1b2f3 100644 --- a/httprunner/runner.py +++ b/httprunner/runner.py @@ -303,8 +303,8 @@ class Runner(object): except exceptions.ValidationFailure: log_req_resp_details() raise - - return validator.validation_results + finally: + self.validation_results = validator.validation_results def _run_testcase(self, testcase_dict): """ run single testcase. @@ -382,9 +382,9 @@ class Runner(object): self._run_testcase(test_dict) else: # api - validation_results = {} + self.validation_results = {} try: - validation_results = self._run_test(test_dict) + self._run_test(test_dict) except Exception: # log exception request_type and name for locust stat self.exception_request_type = test_dict["request"]["method"] @@ -393,7 +393,7 @@ class Runner(object): finally: # get request/response data and validate results self.meta_datas = getattr(self.http_client_session, "meta_data", {}) - self.meta_datas["validators"] = validation_results + self.meta_datas["validators"] = self.validation_results def export_variables(self, output_variables_list): """ export current testcase variables diff --git a/pyproject.toml b/pyproject.toml index e0b6f378..2dfa8519 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "httprunner" -version = "2.4.8" +version = "2.4.9" description = "One-stop solution for HTTP(S) testing." license = "Apache-2.0" readme = "README.md"