diff --git a/openpower/ext_interfaces/test_vmi.robot b/openpower/ext_interfaces/test_vmi.robot
index 8c05ff9..4a84311 100644
--- a/openpower/ext_interfaces/test_vmi.robot
+++ b/openpower/ext_interfaces/test_vmi.robot
@@ -130,11 +130,15 @@
 
     # Verifying persistency of dynamic address.
     Set VMI IPv4 Origin  ${True}  ${HTTP_ACCEPTED}
+    Redfish Power Off  stack_mode=skip
+    Redfish Power On
     ${default}=  Set Variable  0.0.0.0
     Verify VMI Network Interface Details  ${default}  DHCP  ${default}  ${default}
 
     # Verifying persistency of static address.
     Switch VMI IPv4 Origin And Verify Details
+    Redfish Power Off  stack_mode=skip
+    Redfish Power On
     Set Static IPv4 Address To VMI And Verify  ${test_ipv4}  ${test_gateway}  ${test_netmask}
 
 
@@ -352,9 +356,8 @@
     ${default}=  Set Variable  0.0.0.0
     Verify VMI Network Interface Details  ${default}  DHCP  ${default}  ${default}
     Set VMI IPv4 Origin  ${False}
-    ${resp}=  Redfish.Get
-    ...  /redfish/v1/Systems/hypervisor/EthernetInterfaces/${active_channel_config['${CHANNEL_NUMBER}']['name']}
-    Should Be Empty  ${resp.dict["IPv4Addresses"]}
+    ${vmi_ip}=  Get VMI Network Interface Details
+    Should Be Empty  ${vmi_ip["IPv4_Address"]}
 
 
 Multiple Times Enable And Disable DHCP And Verify
@@ -367,9 +370,8 @@
       Set VMI IPv4 Origin  ${True}
       Verify VMI Network Interface Details  ${default}  DHCP  ${default}  ${default}
       Set VMI IPv4 Origin  ${False}
-      ${resp}=  Redfish.Get
-      ...  /redfish/v1/Systems/hypervisor/EthernetInterfaces/${active_channel_config['${CHANNEL_NUMBER}']['name']}
-      Should Be Empty  ${resp.dict["IPv4Addresses"]}
+      ${vmi_ip}=  Get VMI Network Interface Details
+      Should Be Empty  ${vmi_ip["IPv4_Address"]}
     END
 
 
@@ -556,22 +558,22 @@
     ...  /redfish/v1/Systems/hypervisor/EthernetInterfaces/${active_channel_config['${CHANNEL_NUMBER}']['name']}
     Should Be Equal  ${resp.dict["DHCPv4"]["DHCPEnabled"]}  ${dhcp_enabled}
 
-    Return From Keyword If  ${valid_status_code} != ${HTTP_ACCEPTED}
-    ${resp}=  Redfish.Get
-    ...  /redfish/v1/Systems/hypervisor/EthernetInterfaces/${active_channel_config['${CHANNEL_NUMBER}']['name']}
-    Should Be Equal  ${resp.dict["DHCPv4"]["DHCPEnabled"]}  ${dhcp_enabled}
-
 
 Switch VMI IPv4 Origin And Verify Details
     [Documentation]  Switch VMI IPv4 origin and verify details.
 
-    ${curr_mode}=  Get Immediate Child Parameter From VMI Network Interface  DHCPEnabled
+    ${dhcp_mode_before}=  Get Immediate Child Parameter From VMI Network Interface  DHCPEnabled
     ${dhcp_enabled}=  Set Variable If  ${curr_mode} == ${False}  ${True}  ${False}
 
     ${default}=  Set Variable  0.0.0.0
     ${origin}=  Set Variable If  ${curr_mode} == ${False}  DHCP  Static
     Set VMI IPv4 Origin  ${dhcp_enabled}  ${HTTP_ACCEPTED}
-    Verify VMI Network Interface Details  ${default}  ${origin}  ${default}  ${default}
+
+    ${dhcp_mode_after}=  Get Immediate Child Parameter From VMI Network Interface  DHCPEnabled
+    Should Not Be Equal  ${dhcp_mode_before}  ${dhcp_mode_after}
+
+    Run Keyword If  ${dhcp_mode_after} == ${True}
+    ...  Verify VMI Network Interface Details  ${default}  ${origin}  ${default}  ${default}
 
 
 Delete VMI Static IP Address Using Different Users
