diff options
author | jose.lausuch <jose.lausuch@ericsson.com> | 2016-07-28 09:14:48 +0200 |
---|---|---|
committer | Jose Lausuch <jose.lausuch@ericsson.com> | 2016-07-28 09:43:31 +0000 |
commit | f5687e356aafd9eb56a7f50e5e848f61bc712729 (patch) | |
tree | 5554967a50f9980f90b27b1b3e707e58162f4b7f | |
parent | c944039b76100d5df09208ce5cd733e363f50aef (diff) |
Bugfix: dont stop execution when a test case is not blocking
Change-Id: I3564b6f2d8f8057ec2c9753837e3a5fe16a4a866
Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com>
-rw-r--r-- | ci/generate_report.py | 2 | ||||
-rwxr-xr-x | ci/run_tests.py | 23 | ||||
-rw-r--r-- | ci/tier_handler.py | 2 |
3 files changed, 19 insertions, 8 deletions
diff --git a/ci/generate_report.py b/ci/generate_report.py index 16962fe0..53aef0c9 100644 --- a/ci/generate_report.py +++ b/ci/generate_report.py @@ -8,7 +8,7 @@ import functest.utils.functest_logger as ft_logger COL_1_LEN = 25 COL_2_LEN = 15 COL_3_LEN = 12 -COL_4_LEN = 10 +COL_4_LEN = 15 COL_5_LEN = 75 # If we run from CI (Jenkins) we will push the results to the DB diff --git a/ci/run_tests.py b/ci/run_tests.py index a024dd72..383a20f9 100755 --- a/ci/run_tests.py +++ b/ci/run_tests.py @@ -75,6 +75,13 @@ def cleanup(): os_clean.main() +def update_test_info(test_name, result, duration): + for test in EXECUTED_TEST_CASES: + if test['test_name'] == test_name: + test.update({"result": result, + "duration": duration}) + + def run_test(test, tier_name): global OVERALL_RESULT, EXECUTED_TEST_CASES result_str = "PASS" @@ -109,14 +116,17 @@ def run_test(test, tier_name): OVERALL_RESULT = -1 result_str = "FAIL" - if test.get_blocking(): - logger.info("This test case is blocking. Exiting...") + if test.is_blocking(): + if not args.test or args.test == "all": + logger.info("This test case is blocking. Aborting overall " + "execution.") + # if it is a single test we don't print the whole results table + update_test_info(test_name, result_str, duration_str) + generate_report.main(EXECUTED_TEST_CASES) + logger.info("Execution exit value: %s" % OVERALL_RESULT) sys.exit(OVERALL_RESULT) - for test in EXECUTED_TEST_CASES: - if test['test_name'] == test_name: - test.update({"result": result_str, - "duration": duration_str}) + update_test_info(test_name, result_str, duration_str) return result @@ -207,6 +217,7 @@ def main(): else: run_all(_tiers) + logger.info("Execution exit value: %s" % OVERALL_RESULT) sys.exit(OVERALL_RESULT) if __name__ == '__main__': diff --git a/ci/tier_handler.py b/ci/tier_handler.py index 27b9cbcf..e50fbe6f 100644 --- a/ci/tier_handler.py +++ b/ci/tier_handler.py @@ -131,7 +131,7 @@ class TestCase: def get_criteria(self): return self.criteria - def get_blocking(self): + def is_blocking(self): return self.blocking def __str__(self): |