diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2bf3ad10..2581312f 100755
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -11,6 +11,7 @@ Added code to handle login acknowledgement.
 - #23 MISSING_JSON_TYPE error code is thrown when attempting to restore the appliance
 - #58 loginMsgAck is not handled in python code
 - #60 SPT type for api1600 should be ServerProfileTemplateV8
+- #67 raise exception with proper error message when ip is not provided in config
 
 # 5.2.0
 #### Notes
diff --git a/hpOneView/oneview_client.py b/hpOneView/oneview_client.py
index d3d3552e..56bb077f 100755
--- a/hpOneView/oneview_client.py
+++ b/hpOneView/oneview_client.py
@@ -112,15 +112,18 @@ from hpOneView.resources.security.certificates_server import CertificatesServer
 from hpOneView.resources.hypervisors.hypervisor_cluster_profiles import HypervisorClusterProfiles
 
 ONEVIEW_CLIENT_INVALID_PROXY = 'Invalid Proxy format'
+ONEVIEW_CLIENT_INVALID_I3S_IP = 'Image streamer ip address is missing'
+ONEVIEW_CLIENT_MISSING_IP = 'Oneview ip address is missing'
 
 
 class OneViewClient(object):
     DEFAULT_API_VERSION = 800
 
     def __init__(self, config):
-        self.__connection = connection(config["ip"], config.get('api_version', self.DEFAULT_API_VERSION), config.get('ssl_certificate', False),
+        self.__connection = connection(config.get('ip'), config.get('api_version', self.DEFAULT_API_VERSION), config.get('ssl_certificate', False),
                                        config.get('timeout'))
         self.__image_streamer_ip = config.get("image_streamer_ip")
+        self.__validate_host()
         self.__set_proxy(config)
         self.__connection.login(config["credentials"])
         self.__certificate_authority = None
@@ -268,6 +271,13 @@ class OneViewClient(object):
             proxy_port = int(splitted[1])
             self.__connection.set_proxy(proxy_host, proxy_port)
 
+    def __validate_host(self):
+        """
+        Fails if oneview ip is not provided
+        """
+        if not self.__connection._host:
+            raise ValueError(ONEVIEW_CLIENT_MISSING_IP)
+
     @property
     def api_version(self):
         """
@@ -295,6 +305,9 @@ class OneViewClient(object):
         Returns:
             ImageStreamerClient:
         """
+        if not self.__image_streamer_ip:
+            raise ValueError(ONEVIEW_CLIENT_INVALID_I3S_IP)
+
         image_streamer = ImageStreamerClient(self.__image_streamer_ip,
                                              self.__connection.get_session_id(),
                                              self.__connection._apiVersion,

raise exception with proper error message when ip is not provided in config
Currently, while running i3s examples without providing i3s ip in config, oneview_client doesn't raise any exception and throws improper error messages which becomes quite difficult for user to understand the root cause of error.

Expected result: oneview_client throws below error.

![image](https://user-images.githubusercontent.com/39786905/85988305-78f64200-ba0c-11ea-8ba5-76e29c59a8ef.png)

diff --git a/tests/unit/test_oneview_client.py b/tests/unit/test_oneview_client.py
index 5818172b..7a39fddf 100755
--- a/tests/unit/test_oneview_client.py
+++ b/tests/unit/test_oneview_client.py
@@ -137,6 +137,17 @@ class OneViewClientTest(unittest.TestCase):
 
         self._oneview = OneViewClient(config)
 
+    def test_raise_error_missing_ip(self):
+        config = {"ip": "",
+                  "credentials": {
+                      "userName": "administrator",
+                      "password": ""}}
+
+        try:
+            OneViewClient(config)
+        except ValueError as e:
+            self.assertTrue("ip address is missing" in e.args[0])
+
     def test_raise_error_invalid_proxy(self):
         config = {"ip": "172.16.102.59",
                   "proxy": "3128",
@@ -357,12 +368,10 @@ class OneViewClientTest(unittest.TestCase):
         client = OneViewClient(config)
         client.connection.set_session_id('123')
 
-        i3s = client.create_image_streamer_client()
-
-        self.assertEqual(i3s.connection.get_session_id(), client.connection.get_session_id())
-        self.assertEqual(i3s.connection._apiVersion, client.api_version)
-        self.assertEqual(i3s.connection.get_host(), None)
-        self.assertEqual(client.connection.get_host(), "172.16.102.59")
+        try:
+            client.create_image_streamer_client()
+        except ValueError as e:
+            self.assertTrue("Image streamer ip" in e.args[0])
 
     @mock.patch.object(connection, 'login')
     def test_create_image_streamer_client_with_image_streamer_ip(self, mock_login):

pip install -e .
parse_log_pytest
requirements.txt
mock==2.0.0 pytest
3.7
requirements.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
certifi @ file:///croot/certifi_1671487769961/work/certifi
exceptiongroup==1.2.2
future==1.0.0
-e git+https://github.com/HewlettPackard/oneview-python.git@bbf361692bb8e09a2d0d63635f79c55e5e0affeb#egg=hpOneView
importlib-metadata==6.7.0
iniconfig==2.0.0
mock==2.0.0
packaging==24.0
pbr==6.1.1
pluggy==1.2.0
pytest==7.4.4
six==1.17.0
tomli==2.0.1
typing_extensions==4.7.1
zipp==3.15.0

name: oneview-python
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=22.3.1=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - exceptiongroup==1.2.2
      - future==1.0.0
      - importlib-metadata==6.7.0
      - iniconfig==2.0.0
      - mock==2.0.0
      - packaging==24.0
      - pbr==6.1.1
      - pluggy==1.2.0
      - pytest==7.4.4
      - six==1.17.0
      - tomli==2.0.1
      - typing-extensions==4.7.1
      - zipp==3.15.0
prefix: /opt/conda/envs/oneview-python

tests/unit/test_oneview_client.py::OneViewClientTest::test_raise_error_missing_ip
tests/unit/test_oneview_client.py::OneViewClientTest::test_alerts_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_device_device_snmp_v1_trap_destinations_client tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_device_device_snmp_v1_trap_destinations_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_device_device_snmp_v3_trap_destinations_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_device_device_snmp_v3_users_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_device_read_community_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_node_information_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_appliance_time_and_locale_configuration_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_backups_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_certificate_authority_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_certificate_authority_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_certificate_rabbitmq_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_certificates_server_client tests/unit/test_oneview_client.py::OneViewClientTest::test_certificates_server_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_configured_api_version tests/unit/test_oneview_client.py::OneViewClientTest::test_connection_type tests/unit/test_oneview_client.py::OneViewClientTest::test_create_image_streamer_client_with_image_streamer_ip tests/unit/test_oneview_client.py::OneViewClientTest::test_create_image_streamer_client_without_image_streamer_ip tests/unit/test_oneview_client.py::OneViewClientTest::test_datacenters_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_default_api_version tests/unit/test_oneview_client.py::OneViewClientTest::test_drive_enclosure_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_enclosure_groups_client tests/unit/test_oneview_client.py::OneViewClientTest::test_enclosures tests/unit/test_oneview_client.py::OneViewClientTest::test_endpoints_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_endpoints_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_events_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_fc_networks_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_fc_networks_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_fcoe_networks_client tests/unit/test_oneview_client.py::OneViewClientTest::test_fcoe_networks_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_fcoe_networks_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_firmware_drivers_client tests/unit/test_oneview_client.py::OneViewClientTest::test_firmware_drivers_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_from_environment_variables_is_passing_right_arguments_to_the_constructor tests/unit/test_oneview_client.py::OneViewClientTest::test_from_environment_variables_is_passing_right_arguments_to_the_constructor_with_only_sessionID tests/unit/test_oneview_client.py::OneViewClientTest::test_from_environment_variables_is_passing_right_arguments_to_the_constructor_with_sessionID tests/unit/test_oneview_client.py::OneViewClientTest::test_from_full_environment_variables tests/unit/test_oneview_client.py::OneViewClientTest::test_from_full_environment_variables_with_sessionID tests/unit/test_oneview_client.py::OneViewClientTest::test_from_json_file tests/unit/test_oneview_client.py::OneViewClientTest::test_from_json_file_with_only_sessionID tests/unit/test_oneview_client.py::OneViewClientTest::test_from_json_file_with_sessionID tests/unit/test_oneview_client.py::OneViewClientTest::test_from_minimal_environment_variables tests/unit/test_oneview_client.py::OneViewClientTest::test_from_minimal_environment_variables_with_sessionID tests/unit/test_oneview_client.py::OneViewClientTest::test_hypervisor_cluster_profiles_client tests/unit/test_oneview_client.py::OneViewClientTest::test_hypervisor_cluster_profiles_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_hypervisor_managers_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_ipv4_ranges_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_ipv4_ranges_lazy_loading tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_ipv4_subnets_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_ipv4_subnets_lazy_loading tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_lazy_loading tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_vmac_ranges_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_vmac_ranges_has_right_value tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_vsn_ranges_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_vsn_ranges_has_right_value tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_vwwn_ranges_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_id_pools_vwwn_ranges_has_right_value tests/unit/test_oneview_client.py::OneViewClientTest::test_index_resources_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_interconnect_link_topologies_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_interconnect_link_topologies_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_interconnects_client tests/unit/test_oneview_client.py::OneViewClientTest::test_interconnects_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_interconnects_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_internal_link_sets_client tests/unit/test_oneview_client.py::OneViewClientTest::test_internal_link_sets_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_labels_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_alerts tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_appliance_device_device_snmp_v3_trap_destinations tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_appliance_device_device_snmp_v3_users tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_appliance_device_read_community tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_appliance_node_information tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_appliance_time_and_locale_configuration tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_appliance_version_information tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_backups tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_certificate_authority tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_certificate_rabbitmq tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_connections tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_datacenters tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_drive_enclosure tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_endpoints tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_events tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_fabrics tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_firmware_bundles tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_hypervisor_managers tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_id_pools_vmac_ranges tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_id_pools_vsn_ranges tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_id_pools_vwwn_ranges tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_index_resources tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_interconnect_link_topologies tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_labels tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_logical_downlinks tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_logical_switches tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_login_details tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_managed_sans tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_metric_streaming tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_os_deployment_servers tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_power_devices tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_racks tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_san_managers tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_sas_logical_jbod_attachments tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_sas_logical_jbods tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_scopes tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_switches tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_tasks tests/unit/test_oneview_client.py::OneViewClientTest::test_lazy_loading_users tests/unit/test_oneview_client.py::OneViewClientTest::test_licenses_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_enclosures tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_interconnect_groups_client tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_interconnect_groups_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_interconnect_groups_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_interconnects_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_interconnects_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_interconnects_return tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_switch_groups_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_switch_groups_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_switch_groups_return tests/unit/test_oneview_client.py::OneViewClientTest::test_logical_switches_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_login_details_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_managed_sans_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_metric_streaming_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_metric_streaming_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_migratable_vc_domains_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_migratable_vc_domains_lazy_loading tests/unit/test_oneview_client.py::OneViewClientTest::test_network_sets_client tests/unit/test_oneview_client.py::OneViewClientTest::test_os_deployment_plans_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_os_deployment_plans_return tests/unit/test_oneview_client.py::OneViewClientTest::test_os_deployment_servers_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_power_devices_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_power_devices_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_racks_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_racks_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_raise_error_invalid_proxy tests/unit/test_oneview_client.py::OneViewClientTest::test_restores_client tests/unit/test_oneview_client.py::OneViewClientTest::test_restores_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_roles_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_roles_lazy_loading tests/unit/test_oneview_client.py::OneViewClientTest::test_san_managers_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_san_managers_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_interconnect_types_client tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_interconnect_types_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_interconnects_client tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_interconnects_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_logical_interconnect_groups_client tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_logical_interconnect_groups_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_logical_interconnects_client tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_logical_interconnects_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_logical_jbod_attachments_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_sas_logical_jbods_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_scopes_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_server_hardware_client tests/unit/test_oneview_client.py::OneViewClientTest::test_server_hardware_types_client tests/unit/test_oneview_client.py::OneViewClientTest::test_server_profile_templates_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_server_profile_templates_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_server_profile_templates_return tests/unit/test_oneview_client.py::OneViewClientTest::test_server_profiles_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_server_profiles_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_server_profiles_return tests/unit/test_oneview_client.py::OneViewClientTest::test_should_get_appliance_current_version_and_minimum_version tests/unit/test_oneview_client.py::OneViewClientTest::test_should_return_new_connection_templates_obj tests/unit/test_oneview_client.py::OneViewClientTest::test_should_return_new_ethernet_networks_obj tests/unit/test_oneview_client.py::OneViewClientTest::test_should_return_new_interconnect_types_obj tests/unit/test_oneview_client.py::OneViewClientTest::test_should_return_new_uplink_sets_obj tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_pools_client tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_systems_client tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_volume_attachments_client tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_volume_attachments_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_volume_attachments_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_volume_templates_client tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_volume_templates_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_storage_volume_templates_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_switch_types_client tests/unit/test_oneview_client.py::OneViewClientTest::test_unmanaged_devices_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_uplink_sets_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_uplink_sets_has_value tests/unit/test_oneview_client.py::OneViewClientTest::test_users_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_volumes_client tests/unit/test_oneview_client.py::OneViewClientTest::test_volumes_has_right_type tests/unit/test_oneview_client.py::OneViewClientTest::test_volumes_has_value
hpOneView/oneview_client.py CHANGELOG.md
hpOneView/oneview_client.py CHANGELOG.md