diff --git a/README.md b/README.md
index 9f36c01..0032eec 100755
--- a/README.md
+++ b/README.md
@@ -41,6 +41,11 @@
     $ export SYSLOG_IP_ADDRESS=<remote syslog system ip>
     $ export SYSLOG_PORT=<remote syslog system port>
 
+Use the following variables for Qemu test run
+==========================================================
+    $ export SSH_PORT=<ssh port number>
+    $ export HTTPS_PORT=<https port number>
+
 ```
 
 Run tests
diff --git a/lib/connection_client.robot b/lib/connection_client.robot
new file mode 100755
index 0000000..1e74357
--- /dev/null
+++ b/lib/connection_client.robot
@@ -0,0 +1,26 @@
+*** Settings ***
+Documentation     This module is for SSH connection override to QEMU
+...               based openbmc systems.
+
+Library           SSHLibrary
+Library           OperatingSystem
+
+*** Variables ***
+
+*** Keywords ***
+Open Connection And Log In
+    Run Keyword If   '${SSH_PORT}' != '${EMPTY}' and '${HTTPS_PORT}' != '${EMPTY}'
+    ...   User input SSH and HTTPs Ports
+
+    Run Keyword If  '${SSH_PORT}' == '${EMPTY}'    Open connection     ${OPENBMC_HOST}
+    ...    ELSE  Run Keyword   Open connection     ${OPENBMC_HOST}    port=${SSH_PORT}
+
+    Login   ${OPENBMC_USERNAME}    ${OPENBMC_PASSWORD}
+
+User input SSH and HTTPs Ports
+    [Documentation]   Update the global SSH and HTTPs port variable for QEMU
+    ${port_num}=    Convert To Integer    ${SSH_PORT}
+    ${SSH_PORT}=    Replace Variables     ${port_num}
+
+    ${https_num}=   Convert To Integer    ${HTTPS_PORT}
+    ${AUTH_URI}=    Replace Variables     https://${OPENBMC_HOST}:${https_num}
diff --git a/lib/ipmi_client.robot b/lib/ipmi_client.robot
index e7d96b4..e043a9e 100755
--- a/lib/ipmi_client.robot
+++ b/lib/ipmi_client.robot
@@ -1,26 +1,21 @@
 *** Settings ***
-Documentation           This module is for IPMI client for copying ipmitool to
-...                     openbmc box and execute ipmitool commands.
+Documentation   This module is for IPMI client for copying ipmitool to
+...             openbmc box and execute ipmitool commands.
 
 Resource        ../lib/resource.txt
-
-Library                SSHLibrary
-Library                OperatingSystem
+Resource        ../lib/connection_client.robot
 
 *** Keywords ***
-Open Connection And Log In
-    Open connection     ${OPENBMC_HOST}
-    Login   ${OPENBMC_USERNAME}    ${OPENBMC_PASSWORD}
-    Copy ipmitool
-
 Run IPMI Command
     [arguments]    ${args}
+    Copy ipmitool
     ${output}   ${stderr}=  Execute Command    /tmp/ipmitool -I dbus raw ${args}  return_stderr=True
     Should Be Empty 	${stderr}
     set test variable    ${OUTPUT}     "${output}"
 
 Run IPMI Standard Command
     [arguments]    ${args}
+    Copy ipmitool
     ${stdout}    ${stderr}    ${output}=  Execute Command    /tmp/ipmitool -I dbus ${args}    return_stdout=True    return_stderr= True    return_rc=True
     Should Be Equal    ${output}    ${0}    msg=${stderr}
     [return]    ${stdout}
diff --git a/lib/resource.txt b/lib/resource.txt
index 2800581..6940d22 100755
--- a/lib/resource.txt
+++ b/lib/resource.txt
@@ -23,6 +23,10 @@
 ${PDU_PASSWORD}     ${EMPTY}
 ${PDU_SLOT_NO}      ${EMPTY}
 
+# User define input SSH and HTTPS related parameters
+${SSH_PORT}         ${EMPTY}
+${HTTPS_PORT}       ${EMPTY}
+
 *** Keywords ***
 Get Inventory Schema
     [Arguments]    ${machine}
diff --git a/tests/test_ac_cycles.robot b/tests/test_ac_cycles.robot
index 927a354..9cb7251 100644
--- a/tests/test_ac_cycles.robot
+++ b/tests/test_ac_cycles.robot
@@ -2,24 +2,24 @@
 
 Documentation   This testsuite is for testing file corruption on hard power cycle
 
-Resource        ../lib/pdu/pdu.robot
-Resource        ../lib/utils.robot
+Resource          ../lib/pdu/pdu.robot
+Resource          ../lib/utils.robot
+Resource          ../lib/connection_client.robot
 
-Library         SSHLibrary
+Suite Setup       Open Connection And Log In
+Suite Teardown    Close All Connections
 
 *** Test Cases ***
 Test openbmc buster
     [Tags]      reboot_tests
-    Open Connection And Log In
     ${output}=  Execute Command    find /var/lib -type f |xargs -n 1 touch
     PDU Power Cycle
     Wait For Host To Ping   ${OPENBMC_HOST}
     Sleep   1min
+
+    # Need to re connect the session
     Open Connection And Log In
     ${stdout}   ${stderr}   ${rc}=  Execute Command     echo "hello world"    return_stderr=True  return_rc=True
     Should Be Equal As Integers    ${rc}    ${0}
 
 *** Keywords ***
-Open Connection And Log In
-    Open connection     ${OPENBMC_HOST}
-    Login   ${OPENBMC_USERNAME}   ${OPENBMC_PASSWORD}
diff --git a/tests/test_association.robot b/tests/test_association.robot
index 5931afe..88e90d0 100755
--- a/tests/test_association.robot
+++ b/tests/test_association.robot
@@ -1,11 +1,14 @@
 *** Settings ***
-Documentation          This suite is used for testing eventlog association.
+Documentation     This suite is used for testing eventlog association.
 
-Resource        ../lib/rest_client.robot
-Resource        ../lib/utils.robot
+Resource          ../lib/rest_client.robot
+Resource          ../lib/utils.robot
+Resource          ../lib/connection_client.robot
 
-Library         Collections
-Library         SSHLibrary
+Library           Collections
+
+Suite Setup       Open Connection And Log In
+Suite Teardown    Close All Connections
 
 *** Variables ***
 
@@ -38,7 +41,6 @@
 
     Clear all logs
 
-    Open Connection And Log In
     ${output}=      Execute Command    ${CREATE_ERROR_SINGLE_FRU}
 
     ${log_list} =     Get EventList
@@ -118,12 +120,11 @@
 
 Association with invalid FRU
     [Documentation]     ***BAD PATH***
-    ...                 Create an error log on invalid FRU and verify 
+    ...                 Create an error log on invalid FRU and verify
     ...                 that its does not have any association.\n
 
     Clear all logs
 
-    Open Connection And Log In
     ${output}=      Execute Command    ${CREATE_ERROR_INVALID_FRU}
     ${log_list} =     Get EventList
     ${association_uri} =    catenate    SEPARATOR=   ${log_list[0]}   /fru
@@ -140,7 +141,6 @@
 
     Clear all logs
 
-    Open Connection And Log In
     ${output}=      Execute Command    ${CREATE_ERROR_NO_FRU}
     ${log_list} =     Get EventList
     ${association_uri} =    catenate    SEPARATOR=   ${log_list[0]}   /fru
@@ -157,7 +157,6 @@
 
     Clear all logs
 
-    Open Connection And Log In
     ${output}=      Execute Command    ${CREATE_ERROR_VIRTUAL_SENSOR}
     ${log_list} =     Get EventList
     ${association_uri} =    catenate    SEPARATOR=   ${log_list[0]}   /fru
@@ -174,7 +173,6 @@
     ${association_uri} =    catenate    SEPARATOR=   ${pre_reboot_log_uri}   /fru
     ${pre_reboot_association_content} =     Read Attribute    ${association_uri}    endpoints
 
-    Open Connection And Log In
     ${output}=      Execute Command    /sbin/reboot
     Sleep   ${SYSTEM_SHUTDOWN_TIME}
     Wait For Host To Ping   ${OPENBMC_HOST}
@@ -206,10 +204,6 @@
     ${uri}=     catenate    SEPARATOR=   /org/openbmc/records/events/   ${LOGID}
     [return]  ${uri}
 
-Open Connection And Log In
-    Open connection     ${OPENBMC_HOST}
-    Login   ${OPENBMC_USERNAME}    ${OPENBMC_PASSWORD}
-
 Clear all logs
     ${resp} =   openbmc post request     /org/openbmc/records/events/action/clear    data=${NIL}
     should be equal as strings      ${resp.status_code}     ${HTTP_OK}
diff --git a/tests/test_bootpolicy.robot b/tests/test_bootpolicy.robot
index 19637eb..621179d 100644
--- a/tests/test_bootpolicy.robot
+++ b/tests/test_bootpolicy.robot
@@ -2,13 +2,12 @@
 
 Documentation   This testsuite is for testing boot policy function.
 
-Resource        ../lib/rest_client.robot
-Resource        ../lib/ipmi_client.robot
-Resource        ../lib/utils.robot
+Resource           ../lib/rest_client.robot
+Resource           ../lib/ipmi_client.robot
+Resource           ../lib/utils.robot
 
-Suite Setup     Open Connection And Log In
-Suite Teardown  Close All Connections
-
+Suite Setup        Open Connection And Log In
+Suite Teardown     Close All Connections
 
 *** Variables ***
 
diff --git a/tests/test_eventlog.robot b/tests/test_eventlog.robot
index c294ae5..b71e330 100644
--- a/tests/test_eventlog.robot
+++ b/tests/test_eventlog.robot
@@ -1,14 +1,15 @@
 *** Settings ***
-Documentation          This suite is used for testing the error logging
-...                    capability from the host
+Documentation     This suite is used for testing the error logging
+...               capability from the host
 
-Resource        ../lib/rest_client.robot
-Resource        ../lib/utils.robot
+Resource          ../lib/rest_client.robot
+Resource          ../lib/utils.robot
+Resource          ../lib/connection_client.robot
 
+Library           Collections
 
-Library         BuiltIn
-Library         Collections
-Library         SSHLibrary
+Suite Setup       Open Connection And Log In
+Suite Teardown    Close All Connections
 
 *** Variables ***
 &{NIL}  data=@{EMPTY}
@@ -105,7 +106,6 @@
     ${json} =   to json         ${resp.content}
     ${logs_pre_restart}=    set variable    ${json['data']}
 
-    Open Connection And Log In
     ${uptime}=  Execute Command    systemctl restart obmc-phosphor-event.service
     Sleep   ${10}
 
@@ -120,7 +120,6 @@
     [Tags]  CI
     ${uri}=         create a test log
 
-    Open Connection And Log In
     ${uptime}=  Execute Command    systemctl restart obmc-phosphor-event.service
     Sleep   ${10}
 
@@ -132,7 +131,6 @@
     [Documentation]     This is for testing event creation after the
     ...                 event service is restarted.
     [Tags]  CI
-    Open Connection And Log In
     ${uptime}=  Execute Command    systemctl restart obmc-phosphor-event.service
     Sleep   ${10}
 
@@ -142,7 +140,6 @@
     [Documentation]     This testcase is for testing deleted newly created event
     ...                 after event service is restarted.
     [Tags]  CI
-    Open Connection And Log In
     ${uptime}=  Execute Command    systemctl restart obmc-phosphor-event.service
     Sleep   ${10}
 
@@ -163,7 +160,6 @@
     [Tags]      reboot_tests
     ${pre_reboot_event}=         create a test log
 
-    Open Connection And Log In
     ${output}=      Execute Command    /sbin/reboot
     Sleep   ${SYSTEM_SHUTDOWN_TIME}
     Wait For Host To Ping   ${OPENBMC_HOST}
@@ -204,7 +200,3 @@
     ${LOGID} =    convert to integer    ${json['data']}
     ${uri}=     catenate    SEPARATOR=   /org/openbmc/records/events/   ${LOGID}
     [return]  ${uri}
-
-Open Connection And Log In
-    Open connection     ${OPENBMC_HOST}
-    Login   ${OPENBMC_USERNAME}    ${OPENBMC_PASSWORD}
diff --git a/tests/test_networkd.robot b/tests/test_networkd.robot
index 74b2cd3..d4076f5 100755
--- a/tests/test_networkd.robot
+++ b/tests/test_networkd.robot
@@ -3,14 +3,15 @@
 ...					Details of valid interfaces can be found here...
 ...					https://github.com/openbmc/docs/blob/master/rest-api.md
 
-Resource		../lib/rest_client.robot
-Resource                ../lib/ipmi_client.robot
-Resource                ../lib/utils.robot
-Library                 ../lib/pythonutil.py
+Resource            ../lib/rest_client.robot
+Resource            ../lib/connection_client.robot
+Resource            ../lib/utils.robot
+Library             ../lib/pythonutil.py
 
+Suite Setup         Open Connection And Log In
+Suite Teardown      Close All Connections
 
-
-*** Test Cases ***                                
+*** Test Cases ***
 
 Get the Mac address
 
diff --git a/tests/test_openbmc_service_restart_policy.robot b/tests/test_openbmc_service_restart_policy.robot
index 93b9c44..845958f 100644
--- a/tests/test_openbmc_service_restart_policy.robot
+++ b/tests/test_openbmc_service_restart_policy.robot
@@ -1,12 +1,12 @@
 *** Settings ***
-Documentation           This testsuites tests the autorestart policy for
-...                     OpenBMC project
+Documentation        This testsuites tests the autorestart policy for
+...                  OpenBMC project
 
-Resource        ../lib/resource.txt
+Resource             ../lib/resource.txt
+Resource             ../lib/connection_client.robot
 
-Library                SSHLibrary
-Suite Setup            Open Connection And Log In
-Suite Teardown         Close All Connections
+Suite Setup          Open Connection And Log In
+Suite Teardown       Close All Connections
 
 *** Test Cases ***
 Test OpenBMC Services Autorestart Policy
@@ -54,7 +54,3 @@
     [arguments]    ${command}
     ${stdout}   ${stderr}   ${rc}=  Execute Command    ${command}    return_stderr=True     return_rc=True
     [Return]    ${stdout}   ${stderr}   ${rc}
-
-Open Connection And Log In
-    Open connection     ${OPENBMC_HOST}
-    Login   ${OPENBMC_USERNAME}    ${OPENBMC_PASSWORD}
diff --git a/tests/test_syslog.robot b/tests/test_syslog.robot
index 92a5260..3b9a409 100755
--- a/tests/test_syslog.robot
+++ b/tests/test_syslog.robot
@@ -4,10 +4,11 @@
 
 Resource            ../lib/rest_client.robot
 Resource            ../lib/utils.robot
-Resource            ../lib/ipmi_client.robot
+Resource            ../lib/connection_client.robot
 
-Library             OperatingSystem
-Library             SSHLibrary
+Suite Setup         Open Connection And Log In
+Suite Teardown      Close All Connections
+
 
 *** Variables ***
 ${INVALID_SYSLOG_IP_ADDRESS}      a.ab.c.d
@@ -111,7 +112,6 @@
     ${old_port}=   Read Attribute   /org/openbmc/LogManager/rsyslog   port
     ${old_status} =    Read Attribute    /org/openbmc/LogManager/rsyslog   status
     
-    Open Connection And Log In
     ${output}=      Execute Command    /sbin/reboot
     Sleep   ${SYSTEM_SHUTDOWN_TIME}
     Wait For Host To Ping   ${OPENBMC_HOST}
diff --git a/tests/test_time.robot b/tests/test_time.robot
index f3a061b..f0c0fb3 100755
--- a/tests/test_time.robot
+++ b/tests/test_time.robot
@@ -1,14 +1,13 @@
 *** Settings ***
 Documentation          This suite is for testing System time in Open BMC.
 
-Resource        ../lib/ipmi_client.robot
+Resource               ../lib/ipmi_client.robot
 
-Library                 OperatingSystem
-Library                 SSHLibrary
-Library                 DateTime
+Library                OperatingSystem
+Library                DateTime
 
-Suite Setup             Open Connection And Log In
-Suite Teardown          Close All Connections
+Suite Setup            Open Connection And Log In
+Suite Teardown         Close All Connections
 
 *** Variables ***
 ${SYSTEM_TIME_INVALID}     01/01/1969 00:00:00
diff --git a/tests/test_warmreset.robot b/tests/test_warmreset.robot
index 6706410..a1e0ffa 100644
--- a/tests/test_warmreset.robot
+++ b/tests/test_warmreset.robot
@@ -3,10 +3,10 @@
 
 Resource                ../lib/rest_client.robot
 Resource                ../lib/utils.robot
+Resource                ../lib/connection_client.robot
 
-
-Library                 OperatingSystem
-Library                 SSHLibrary
+Suite Setup             Open Connection And Log In
+Suite Teardown          Close All Connections
 
 *** Variables ***
 ${SYSTEM_SHUTDOWN_TIME}    ${5}
@@ -46,7 +46,3 @@
     \   log     ${ELEMENT}
     \   ${found}=   Get Lines Matching Pattern      ${ELEMENT}      *control/bmc*
     \   Return From Keyword If     '${found}' != ''     ${found}
-
-Open Connection And Log In
-    Open connection     ${OPENBMC_HOST}
-    Login   ${OPENBMC_USERNAME}    ${OPENBMC_PASSWORD}
diff --git a/tools/generate_argumentfile.sh b/tools/generate_argumentfile.sh
index ab808de..b888a80 100755
--- a/tools/generate_argumentfile.sh
+++ b/tools/generate_argumentfile.sh
@@ -11,3 +11,5 @@
 echo "--variable PDU_SLOT_NO:$PDU_SLOT_NO" >> $ARG_FILE
 echo "--variable SYSLOG_IP_ADDRESS:$SYSLOG_IP_ADDRESS" >> $ARG_FILE
 echo "--variable SYSLOG_PORT:$SYSLOG_PORT" >> $ARG_FILE
+echo "--variable SSH_PORT:$SSH_PORT" >> $ARG_FILE
+echo "--variable HTTPS_PORT:$HTTPS_PORT" >> $ARG_FILE
