diff options
author | xudan <xudan16@huawei.com> | 2018-10-22 05:38:57 -0400 |
---|---|---|
committer | xudan <xudan16@huawei.com> | 2018-11-06 21:48:26 -0500 |
commit | 4ff39a3fba63a3ab4585291244d1f2ea71e0f141 (patch) | |
tree | 9039a69aa79781848cc9a7bb4bdd660511ce3788 /dovetail/run.py | |
parent | a53ad2a58fc8f8375cb50333e753f0a74d238df7 (diff) |
Update classes in report.py
Change-Id: Ia17bf7ef3e304eef7b3f0b2f7aa04e3be75bc8c3
Signed-off-by: xudan <xudan16@huawei.com>
Diffstat (limited to 'dovetail/run.py')
-rwxr-xr-x | dovetail/run.py | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/dovetail/run.py b/dovetail/run.py index 3037980b..9f109d45 100755 --- a/dovetail/run.py +++ b/dovetail/run.py @@ -40,11 +40,12 @@ def load_testsuite(testsuite): return Testsuite.get(testsuite) -def run_test(testcase_list, logger): +def run_test(testcase_list, report_flag, logger): + report = Report() duration = 0 if not testcase_list: logger.warning("No test case will be executed.") - return duration + return start_time = time.time() for testcase_name in testcase_list: @@ -55,17 +56,23 @@ def run_test(testcase_list, logger): if run_testcase: testcase.run() - stop_on_fail = Report.check_tc_result(testcase) - try: - if (not stop_on_fail or stop_on_fail['criteria'] == "FAIL") \ - and dt_cfg.dovetail_config['stop']: - return "stop_on_fail" - except KeyError as e: - logger.error("There is no key {}.".format(e)) + result = report.check_tc_result(testcase) + if dt_cfg.dovetail_config['stop']: + try: + if (not result or result['criteria'] == "FAIL"): + logger.info("Stop because {} failed".format(testcase_name)) + return + except KeyError as e: + logger.error("There is no key {}.".format(e)) + logger.info("Stop because {} failed".format(testcase_name)) + return end_time = time.time() duration = end_time - start_time - return duration + report.generate(testcase_list, duration) + if report_flag: + report.save_logs() + return def filter_config(input_dict, logger): @@ -276,11 +283,7 @@ def main(*args, **kwargs): if not testcase_list: raise SystemExit(EXIT_RUN_FAILED) - duration = run_test(testcase_list, logger) - if (duration != "stop_on_fail"): - Report.generate(testcase_list, duration) - if (kwargs['report']): - Report.save_logs() + run_test(testcase_list, kwargs['report'], logger) dt_cfg.load_config_files(constants.CONF_PATH) |