aboutsummaryrefslogtreecommitdiffstats
path: root/src/onaptests/scenario
diff options
context:
space:
mode:
authorSylvain Desbureaux <sylvain.desbureaux@orange.com>2020-12-01 17:49:31 +0100
committerSylvain Desbureaux <sylvain.desbureaux@orange.com>2020-12-01 17:51:56 +0100
commit9c71e24adaaedd07d7e2e65922c5a3cee27318c9 (patch)
treea47f904d81a6afbadd8b451563d34fcd974e6bcd /src/onaptests/scenario
parenta6fe8be6c1d1eb9e7293ed1c3bb63a76646fe22c (diff)
Better exception handling
Instead of catching all exceptions that can occurs and miss one, let's create a "parent" exception class for OnapTest and catch only this one. In order to know what's the error, we also create a class attribute (`error_message`) that gives us the reason for exception. Issue-ID: INT-1796 Signed-off-by: Sylvain Desbureaux <sylvain.desbureaux@orange.com> Change-Id: I798d8c6270c466b1d9be6511f52fd9441401c9c8
Diffstat (limited to 'src/onaptests/scenario')
-rw-r--r--src/onaptests/scenario/basic_cnf.py29
-rw-r--r--src/onaptests/scenario/basic_network.py13
-rw-r--r--src/onaptests/scenario/basic_vm.py23
-rw-r--r--src/onaptests/scenario/clearwater_ims.py7
4 files changed, 13 insertions, 59 deletions
diff --git a/src/onaptests/scenario/basic_cnf.py b/src/onaptests/scenario/basic_cnf.py
index 30c3c3b..306205f 100644
--- a/src/onaptests/scenario/basic_cnf.py
+++ b/src/onaptests/scenario/basic_cnf.py
@@ -5,6 +5,7 @@ import time
from xtesting.core import testcase
from onapsdk.configuration import settings
+
import onaptests.utils.exceptions as onap_test_exceptions
from onaptests.steps.instantiate.vf_module_ala_carte import YamlTemplateVfModuleAlaCarteInstantiateStep
@@ -41,33 +42,9 @@ class BasicCnf(testcase.TestCase):
else:
self.__logger.info("No cleanup requested. Test completed.")
self.result = 100
- except onap_test_exceptions.TestConfigurationException:
- self.result = 0
- self.__logger.error("Basic CNF configuration error")
- except onap_test_exceptions.ServiceInstantiateException:
- self.result = 0
- self.__logger.error("Basic CNF service instantiation error")
- except onap_test_exceptions.ServiceCleanupException:
- self.result = 0
- self.__logger.error("Basic CNF service instance cleanup error")
- except onap_test_exceptions.VnfInstantiateException:
- self.result = 0
- self.__logger.error("Basic CNF Vnf instantiation error")
- except onap_test_exceptions.VnfCleanupException:
- self.result = 0
- self.__logger.error("Basic CNF Vnf instance cleanup error")
- except onap_test_exceptions.ProfileInformationException:
- self.__logger.error("Missing k8s profile information")
- self.result = 0
- except onap_test_exceptions.ProfileCleanupException:
- self.__logger.error("K8s profile deletion failed")
- self.result = 0
- except onap_test_exceptions.VfModuleInstantiateException:
- self.result = 0
- self.__logger.error("Basic CNF Module instantiation error")
- except onap_test_exceptions.VfModuleCleanupException:
- self.__logger.error("Basic CNF Module cleanup failed.")
+ except onap_test_exceptions.OnapTestException as exc:
self.result = 0
+ self.__logger.error(exc.error_message)
finally:
self.stop_time = time.time()
diff --git a/src/onaptests/scenario/basic_network.py b/src/onaptests/scenario/basic_network.py
index de465d3..8aafd32 100644
--- a/src/onaptests/scenario/basic_network.py
+++ b/src/onaptests/scenario/basic_network.py
@@ -46,18 +46,9 @@ class BasicNetwork(testcase.TestCase):
else:
self.__logger.info("No cleanup requested. Test completed.")
self.result = 100
- except onap_test_exceptions.ServiceInstantiateException:
- self.__logger.error("Basic network service instantiation failed.")
- self.result = 0
- except onap_test_exceptions.ServiceInstantiateException:
- self.__logger.error("Basic network service cleanup failed.")
- self.result = 0
- except onap_test_exceptions.NetworkInstantiateException:
- self.__logger.error("Basic network VL instantiation failed.")
- self.result = 0
- except onap_test_exceptions.NetworkCleanupException:
- self.__logger.error("Basic network VL cleanup failed.")
+ except onap_test_exceptions.OnapTestException as exc:
self.result = 0
+ self.__logger.error(exc.error_message)
finally:
self.stop_time = time.time()
diff --git a/src/onaptests/scenario/basic_vm.py b/src/onaptests/scenario/basic_vm.py
index 35cedbc..cbf9b7c 100644
--- a/src/onaptests/scenario/basic_vm.py
+++ b/src/onaptests/scenario/basic_vm.py
@@ -5,6 +5,7 @@ import time
from xtesting.core import testcase
from onapsdk.configuration import settings
+
import onaptests.utils.exceptions as onap_test_exceptions
from onaptests.steps.instantiate.vf_module_ala_carte import YamlTemplateVfModuleAlaCarteInstantiateStep
@@ -42,27 +43,9 @@ class BasicVm(testcase.TestCase):
else:
self.__logger.info("No cleanup requested. Test completed.")
self.result = 100
- except onap_test_exceptions.TestConfigurationException:
- self.result = 0
- self.__logger.error("Basic VM configuration error")
- except onap_test_exceptions.ServiceInstantiateException:
- self.result = 0
- self.__logger.error("Basic VM instantiation error")
- except onap_test_exceptions.ServiceCleanupException:
- self.result = 0
- self.__logger.error("Basic VM instance cleanup error")
- except onap_test_exceptions.VnfInstantiateException:
- self.result = 0
- self.__logger.error("Basic VM Vnf instantiation error")
- except onap_test_exceptions.VnfCleanupException:
- self.result = 0
- self.__logger.error("Basic VM Vnf instance cleanup error")
- except onap_test_exceptions.VfModuleInstantiateException:
- self.result = 0
- self.__logger.error("Basic VM Module instantiation error")
- except onap_test_exceptions.VfModuleCleanupException:
- self.__logger.error("Basic VM Module cleanup failed.")
+ except onap_test_exceptions.OnapTestException as exc:
self.result = 0
+ self.__logger.error(exc.error_message)
finally:
self.stop_time = time.time()
diff --git a/src/onaptests/scenario/clearwater_ims.py b/src/onaptests/scenario/clearwater_ims.py
index 0177e02..8a68fa9 100644
--- a/src/onaptests/scenario/clearwater_ims.py
+++ b/src/onaptests/scenario/clearwater_ims.py
@@ -5,6 +5,8 @@ import time
from xtesting.core import testcase
from onapsdk.configuration import settings
+
+import onaptests.utils.exceptions as onap_test_exceptions
from onaptests.steps.instantiate.vf_module_ala_carte import YamlTemplateVfModuleAlaCarteInstantiateStep
class ClearwaterIms(testcase.TestCase):
@@ -42,9 +44,10 @@ class ClearwaterIms(testcase.TestCase):
self.__logger.info("No cleanup requested. Test completed.")
self.result = 100
self.stop_time = time.time()
- except:
- self.__logger.error("Clearwater IMS test case failed.")
+ except onap_test_exceptions.OnapTestException as exc:
self.result = 0
+ self.__logger.error(exc.error_message)
+ finally:
self.stop_time = time.time()
def clean(self):