diff options
Diffstat (limited to 'dovetail/run.py')
-rwxr-xr-x | dovetail/run.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/dovetail/run.py b/dovetail/run.py index b9194c39..d24919b6 100755 --- a/dovetail/run.py +++ b/dovetail/run.py @@ -11,6 +11,7 @@ import click import sys import os +import time import utils.dovetail_logger as dt_logger import utils.dovetail_utils as dt_utils @@ -48,6 +49,7 @@ def run_test(testsuite, testarea, logger): if value is not None and (testarea == 'full' or testarea in value): testarea_list.append(value) + duration = 0 for testcase_name in testarea_list: logger.info('>>[testcase]: %s' % (testcase_name)) testcase = Testcase.get(testcase_name) @@ -78,8 +80,11 @@ def run_test(testsuite, testarea, logger): if not testcase.prepare_cmd(): logger.error('failed to prepare testcase:%s' % testcase.name()) else: + start_time = time.time() for cmd in testcase.cmds: Container.exec_cmd(container_id, cmd) + end_time = time.time() + duration = end_time - start_time # testcase.post_condition() @@ -88,6 +93,8 @@ def run_test(testsuite, testarea, logger): db_result = Report.get_result(testcase) Report.check_result(testcase, db_result) + return duration + def validate_options(input_dict, logger): # for 'tag' option @@ -160,8 +167,8 @@ def main(*args, **kwargs): if testsuite_validation and testarea_validation: testsuite_yaml = load_testsuite(kwargs['testsuite']) load_testcase() - run_test(testsuite_yaml, testarea, logger) - Report.generate(testsuite_yaml, testarea) + duration = run_test(testsuite_yaml, testarea, logger) + Report.generate(testsuite_yaml, testarea, duration) else: logger.error('invalid input commands, testsuite %s testarea %s' % (kwargs['testsuite'], testarea)) |