Fix summary in run_tests.py 87/39587/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Fri, 18 Aug 2017 12:22:20 +0000 (14:22 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Fri, 18 Aug 2017 12:26:29 +0000 (14:26 +0200)
It fixes summary() when several tests have not been executed after a
blocking test in failure.

Change-Id: I3c0af4c8083ffa76f786756d409c09e018bbecc8
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
functest/ci/run_tests.py

index e26f430..68d7473 100644 (file)
@@ -241,12 +241,18 @@ class Runner(object):
         tiers = [tier] if tier else self._tiers.get_tiers()
         for tier in tiers:
             for test in tier.get_tests():
-                test_case = self.executed_test_cases[test.get_name()]
-                result = 'PASS' if(test_case.is_successful(
-                    ) == test_case.EX_OK) else 'FAIL'
-                msg.add_row([test_case.case_name, test_case.project_name,
-                             self._tiers.get_tier_name(test_case.case_name),
-                             test_case.get_duration(), result])
+                try:
+                    test_case = self.executed_test_cases[test.get_name()]
+                except KeyError:
+                    msg.add_row([test.get_name(), test.get_project(),
+                                 tier.get_name(), "00:00", "SKIP"])
+                else:
+                    result = 'PASS' if(test_case.is_successful(
+                        ) == test_case.EX_OK) else 'FAIL'
+                    msg.add_row(
+                        [test_case.case_name, test_case.project_name,
+                         self._tiers.get_tier_name(test_case.case_name),
+                         test_case.get_duration(), result])
             for test in tier.get_skipped_test():
                 msg.add_row([test.get_name(), test.get_project(),
                              tier.get_name(), "00:00", "SKIP"])