diff options
author | jose.lausuch <jose.lausuch@ericsson.com> | 2016-07-20 16:22:11 +0200 |
---|---|---|
committer | jose.lausuch <jose.lausuch@ericsson.com> | 2016-07-20 16:48:50 +0200 |
commit | 092471c4dc987d4e2e4be88cc66d4c4825d7c306 (patch) | |
tree | a9ab922c8874723ab836f59ac5deced6197080c8 /test/functest | |
parent | fdc60ac1b74b6b49c4ce3c9ad457dd3bbed260eb (diff) |
Report overall status of the test results to DB
The reporting Dashboard looks for the test case called
'bgpvpn'. Now, we report the overall status of the tests
into that test case and also each one separatelly.
http://testresults.opnfv.org/test/api/v1/results?case=bgpvpn
Also, fix the 3 flake8 violations
Change-Id: I5b0d816894bf16d3d11085437f1556b5d0446d81
Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com>
Diffstat (limited to 'test/functest')
-rw-r--r-- | test/functest/run_tests.py | 34 | ||||
-rw-r--r-- | test/functest/testcase_1.py | 2 | ||||
-rw-r--r-- | test/functest/testcase_2.py | 2 | ||||
-rw-r--r-- | test/functest/testcase_3.py | 5 |
4 files changed, 28 insertions, 15 deletions
diff --git a/test/functest/run_tests.py b/test/functest/run_tests.py index 91f0f0a..c913912 100644 --- a/test/functest/run_tests.py +++ b/test/functest/run_tests.py @@ -44,6 +44,9 @@ def main(): config_yaml = yaml.safe_load(f) testcases = config_yaml.get("testcases") + overall_details = {} + overall_status = "PASS" + overall_start_time = time.time() for testcase in testcases: if testcases[testcase]['enabled']: test_name = testcase @@ -56,17 +59,32 @@ def main(): t = importlib.import_module(testcase, package=None) start_time = time.time() result = t.main() - if result < 0: - result = {"status": "FAILED", "details": "execution error."} - logger.info("Results of test case '%s - %s':\n%s\n" % - (test_name, test_descr, result)) end_time = time.time() - # duration = end_time - start_time - criteria = result.get("status") - details = result.get("details") + duration = end_time - start_time + if result < 0: + status = "FAIL" + overall_status = "FAIL" + overall_details.update({test_name_db: "execution error."}) + else: + status = result.get("status") + details = result.get("details") + logger.info("Results of test case '%s - %s':\n%s\n" % + (test_name, test_descr, result)) + + if status == "FAIL": + overall_status = "FAIL" + + dic = {"duration": duration, "status": status} + overall_details.update({test_name_db: dic}) if args.report: push_results( - test_name_db, start_time, end_time, criteria, details) + test_name_db, start_time, end_time, status, details) + + overall_end_time = time.time() + if args.report: + push_results( + "bgpvpn", overall_start_time, overall_end_time, + overall_status, overall_details) exit(0) diff --git a/test/functest/testcase_1.py b/test/functest/testcase_1.py index 250db20..1d245fa 100644 --- a/test/functest/testcase_1.py +++ b/test/functest/testcase_1.py @@ -235,8 +235,8 @@ def add_to_summary(num_cols, col1, col2=""): elif num_cols == 2: SUMMARY += ("| %s" % col1.ljust(7) + "| ") SUMMARY += (col2.ljust(LINE_LENGTH - 12) + "|\n") - DETAILS.append({col2: col1}) if col1 in ("FAIL", "PASS"): + DETAILS.append({col2: col1}) NUM_TESTS += 1 if col1 == "FAIL": NUM_TESTS_FAILED += 1 diff --git a/test/functest/testcase_2.py b/test/functest/testcase_2.py index c28e535..10df605 100644 --- a/test/functest/testcase_2.py +++ b/test/functest/testcase_2.py @@ -276,8 +276,8 @@ def add_to_summary(num_cols, col1, col2=""): elif num_cols == 2: SUMMARY += ("| %s" % col1.ljust(7) + "| ") SUMMARY += (col2.ljust(LINE_LENGTH - 12) + "|\n") - DETAILS.append({col2: col1}) if col1 in ("FAIL", "PASS"): + DETAILS.append({col2: col1}) NUM_TESTS += 1 if col1 == "FAIL": NUM_TESTS_FAILED += 1 diff --git a/test/functest/testcase_3.py b/test/functest/testcase_3.py index 1e586b1..5a8e9b0 100644 --- a/test/functest/testcase_3.py +++ b/test/functest/testcase_3.py @@ -9,11 +9,6 @@ # -import functest.utils.functest_logger as ft_logger -import functest.utils.functest_utils as functest_utils -import functest.utils.openstack_utils as os_utils - - def main(): pass |