diff --git a/tests/openonu-go-adapter/Voltha_ONUReconcileTests.robot b/tests/openonu-go-adapter/Voltha_ONUReconcileTests.robot
index cd56983..30ba316 100755
--- a/tests/openonu-go-adapter/Voltha_ONUReconcileTests.robot
+++ b/tests/openonu-go-adapter/Voltha_ONUReconcileTests.robot
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 *** Settings ***
-Documentation     Test deifferent Reconcile scenarios of ONU Go adapter with ATT workflows only
+Documentation     Test different Reconcile scenarios of ONU Go adapter with all three workflows ATT, DT and TT.
 ...               Test suite is dedicated for only one ONU! Run robot with bbsim-kind.yaml only!
 ...               Not for DT/TT workflow!
 ...               Hint: default timeout in BBSim to mimic OLT reboot is 60 seconds!
@@ -50,6 +50,9 @@
 ${container_log_dir}    ${None}
 # flag for first test, needed due default timeout in BBSim to mimic OLT reboot of 60 seconds
 ${firsttest}    True
+# determines the environment workflow: DT, TT or ATT (default)
+# example: -v workflow:DT
+${workflow}    ATT
 # flag debugmode is used, if true timeout calculation various, can be passed via the command line too
 # example: -v debugmode:True
 ${debugmode}    False
@@ -73,11 +76,10 @@
     [Documentation]    Validates the Reconcile in Starting-OpenOmci
     ...    Reconcile test during “starting-openomci” in AT&T-workflow:
     ...    - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
-    ...    -- wait for device reason “starting-openomci”
+    ...    - wait for device reason “starting-openomci”
     ...    - kill the open-onu-adapter-go
-    ...    -- wait for open-onu-adapter-go to restart
-    ...    -- wait for device reason “omci-flows-pushed”
-    ...    --- check for default EAPOL-flow and enabled UNI-port in ONOS
+    ...    - wait for open-onu-adapter-go to restart
+    ...    - perform sanity test include add subscriber
     ...    - delete ONU and MIB-template in KV-store
     [Tags]    functionalOnuGo    ReconcileStartingOpenOmciOnuGo
     [Setup]    Run Keywords    Start Logging    ReconcileStartingOpenOmciOnuGo
@@ -94,11 +96,10 @@
     [Documentation]    Validates the Reconcile in initial-mib-downloaded
     ...    Reconcile test during “initial-mib-downloaded” in AT&T-workflow:
     ...    - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
-    ...    -- wait for device reason “initial-mib-downloaded”
+    ...    - wait for device reason “initial-mib-downloaded”
     ...    - kill the open-onu-adapter-go
-    ...    -- wait for open-onu-adapter-go to restart
-    ...    -- wait for device reason “omci-flows-pushed”
-    ...    --- check for default EAPOL-flow and enabled UNI-port in ONOS
+    ...    - wait for open-onu-adapter-go to restart
+    ...    - perform sanity test include add subscriber
     ...    - delete ONU and MIB-template in KV-store
     [Tags]    functionalOnuGo    ReconcileInitialMibDownloadedOnuGo
     [Setup]    Run Keywords    Start Logging    ReconcileInitialMibDownloadedOnuGo
@@ -116,16 +117,15 @@
     ...    Former testcase: Reconcile Onu Device in Testsuite Voltha_ONUStateTest.robot
     ...    Reconcile test during “omci-flows-pushed” in AT&T-workflow:
     ...    - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
-    ...    -- wait for device reason “omci-flows-pushed”
+    ...    - perform sanity test include add subscriber
     ...    - kill the open-onu-adapter-go
-    ...    -- wait for open-onu-adapter-go to restart
-    ...    -- wait for device reason “omci-flows-pushed”
+    ...    - wait for open-onu-adapter-go to restart
+    ...    - perform sanity test suppress add subscriber
     ...    - disable onu device
-    ...    -- wait for device reason “tech-profile-config-delete-success”
-    ...    -- check UNI-ports disabled in ONOS
+    ...    - wait for device corresponding onu reason e.g. “tech-profile-config-delete-success”
+    ...    - check UNI-ports disabled in ONOS
     ...    - enable onu device
-    ...    -- wait for device reason “omci-flows-pushed”
-    ...    --- check for default EAPOL-flow and enabled UNI-port in ONOS
+    ...    - perform sanity test suppress add subscriber
     ...    - delete ONU and MIB-template in KV-store
     [Tags]    functionalOnuGo    ReconcileOmciFlowsPushedOnuGo
     [Setup]    Run Keywords    Start Logging    ReconcileOmciFlowsPushedOnuGo
@@ -142,16 +142,15 @@
     [Documentation]    Validates the Reconcile for disabled Onu device
     ...    Reconcile test for disabled Onu device in AT&T-workflow:
     ...    - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
-    ...    -- wait for device reason “omci-flows-pushed”
+    ...    - perform sanity test include add subscriber
     ...    - disable onu device
-    ...    -- wait for device reason “tech-profile-config-delete-success”
-    ...    -- check UNI-ports disabled in ONOS
-   ...    - kill the open-onu-adapter-go
-    ...    -- wait for open-onu-adapter-go to restart
-    ...    -- check device reason is still “tech-profile-config-delete-success”
+    ...    - wait for device corresponding onu reason e.g. “tech-profile-config-delete-success”
+    ...    - check UNI-ports disabled in ONOS
+    ...    - kill the open-onu-adapter-go
+    ...    - wait for open-onu-adapter-go to restart
+    ...    - check device reason is still the same before restart
     ...    - enable onu device
-    ...    -- wait for device reason “onu-reenabled”
-    ...    --- check for default EAPOL-flow and enabled UNI-port in ONOS
+    ...    - perform sanity test suppress add subscriber
     ...    - delete ONU and MIB-template in KV-store
     [Tags]    functionalOnuGo    ReconcileDisabledOnuDeviceOnuGo
     [Setup]    Run Keywords    Start Logging    ReconcileDisabledOnuDeviceOnuGo
@@ -170,7 +169,7 @@
     ${LogInfo}=    Catenate
     ...    \r\nPassed arguments:
     ...    debugmode:${debugmode}, logging:${logging}, pausebeforecleanup:${pausebeforecleanup},
-    ...    print2console:${print2console}
+    ...    print2console:${print2console}, usekill2restart:${usekill2restart}, workflow:${workflow}
     Log    ${LogInfo}    console=yes
     Common Test Suite Setup
     # prepare skip message in yellow for console log
@@ -239,11 +238,12 @@
     ...    - enable OLT device
     ...    - wait for passed openonu reason
     ...    - restart openonu adaptor
-    ...    - check openonu adaptor is ready again
-    ...    - wait for openonu reason 'omci-flows-pushed'
-    ...    - check default (eapol) flow
-    ...    - port check
+    ...    - perform sanity test include add subscriber
     [Arguments]    ${expected_onu_reason}
+    ${admin_state}    ${oper_status}    ${connect_status}    ${onu_state_nb}    ${onu_state}=    Map State
+    ...    ${expected_onu_reason}
+    Should Be True    ${onu_state_nb}<=5
+    ...    Wrong expected onu reason ${expected_onu_reason}, must be lower than 'omci-flows-pushed'!
     FOR    ${I}    IN RANGE    0    ${num_olts}
         #get olt serial number
         ${olt_serial_number}=    Set Variable    ${list_olts}[${I}][sn]
@@ -254,29 +254,24 @@
     Current State Test All Onus    ${expected_onu_reason}
     Run Keyword If    ${usekill2restart}    Kill And Check Onu Adaptor    ${namespace}
     ...    ELSE    Restart And Check Onu Adaptor    ${namespace}
-    Current State Test All Onus    omci-flows-pushed
-    Wait for Ports in ONOS for all OLTs    ${onos_ssh_connection}    ${num_all_onus}    BBSM    ${timeout}
-    Wait Until Keyword Succeeds    ${timeout}    2s    Verify Eapol Flows Added    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}
-    ...    ${num_all_onus}
-    ${flowsresult}=    Execute ONOS CLI Command    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}    flows -s
-    log     ${flowsresult}
+    Run Keyword If    "${workflow}"=="DT"    Perform Sanity Test DT
+    ...    ELSE IF    "${workflow}"=="TT"    Perform Sanity Test TT
+    ...    ELSE       Perform Sanity Test
 
 Do Reconcile For Disabled Onu Device
     [Documentation]    This keyword reconciles ONU device for a disabled onu device and
     ...    check the state afterwards.
     ...    Following steps will be executed:
     ...    - enable OLT device
-    ...    - wait for openonu reason 'omci-flows-pushed'
+    ...    - perform sanity test include add subscriber
     ...    - disable onu device
-    ...    - wait for openonu reason 'tech-profile-config-delete-success'
+    ...    - wait for corresponding openonu reason
     ...    - check UNI-ports disabled in ONOS
     ...    - restart openonu adaptor
     ...    - check openonu adaptor is ready again
-    ...    - check device reason is still 'tech-profile-config-delete-success'
+    ...    - check device reason is still before restart
     ...    - enable onu device
-    ...    - wait for openonu reason 'onu-reenabled'
-    ...    - check default (eapol) flow
-    ...    - port check
+    ...    - perform sanity test suppress add subscriber
     FOR    ${I}    IN RANGE    0    ${num_olts}
         #get olt serial number
         ${olt_serial_number}=    Set Variable    ${list_olts}[${I}][sn]
@@ -284,36 +279,34 @@
         ${olt_device_id}=    Get OLTDeviceID From OLT List    ${olt_serial_number}
         Enable Device    ${olt_device_id}
     END
-    Current State Test All Onus    omci-flows-pushed
+    Run Keyword If    "${workflow}"=="DT"    Perform Sanity Test DT
+    ...    ELSE IF    "${workflow}"=="TT"    Perform Sanity Test TT
+    ...    ELSE       Perform Sanity Test
     Disable Onu Device
-    Current State Test All Onus    tech-profile-config-delete-success
+    ${alternativeonustates}=  Create List     omci-flows-deleted    omci-admin-lock
+    Current State Test All Onus    tech-profile-config-delete-success    alternativeonustate=${alternativeonustates}
     Run Keyword If    ${usekill2restart}    Kill And Check Onu Adaptor    ${namespace}
     ...    ELSE    Restart And Check Onu Adaptor    ${namespace}
-    Current State Test All Onus    tech-profile-config-delete-success
+    Current State Test All Onus    tech-profile-config-delete-success    alternativeonustate=${alternativeonustates}
     Wait for all ONU Ports in ONOS Disabled    ${onos_ssh_connection}
     Enable Onu Device
-    Current State Test All Onus    onu-reenabled    alternativeonustate=omci-flows-pushed
-    Wait for Ports in ONOS for all OLTs    ${onos_ssh_connection}    ${num_all_onus}    BBSM    ${timeout}
-    Wait Until Keyword Succeeds    ${timeout}    2s    Verify Eapol Flows Added    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}
-    ...    ${num_all_onus}
-    ${flowsresult}=    Execute ONOS CLI Command    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}    flows -s
-    log     ${flowsresult}
+    Run Keyword If    "${workflow}"=="DT"    Perform Sanity Test DT    True
+    ...    ELSE IF    "${workflow}"=="TT"    Perform Sanity Test TT    True
+    ...    ELSE       Perform Sanity Test    True
 
 Do Reconcile In Omci-Flows-Pushed
     [Documentation]    This keyword reconciles ONU device in omci-flows-pushed and check the state afterwards.
     ...    Reconcile test during “omci-flows-pushed” in AT&T-workflow:
     ...    - create and enable one BBSIM-ONU (no MIB-template should be available in KV-store)
-    ...    -- wait for device reason “omci-flows-pushed”
+    ...    - perform sanity test include add subscriber
     ...    - kill the open-onu-adapter-go
-    ...    -- wait for open-onu-adapter-go to restart
-    ...    -- wait for device reason “omci-flows-pushed”
+    ...    - wait for open-onu-adapter-go to restart
+    ...    - perform sanity test suppress add subscriber
     ...    - disable onu device
-    ...    -- wait for device reason “tech-profile-config-delete-success”
-    ...    -- check UNI-ports disabled in ONOS
+    ...    - wait for corresponding device reason
+    ...    - check UNI-ports disabled in ONOS
     ...    - enable onu device
-    ...    -- wait for device reason “omci-flows-pushed”
-    ...    --- check for default EAPOL-flow and enabled UNI-port in ONOS
-    ...    - delete ONU and MIB-template in KV-store
+    ...    - perform sanity test supress add subscriber
     FOR    ${I}    IN RANGE    0    ${num_olts}
         #get olt serial number
         ${olt_serial_number}=    Set Variable    ${list_olts}[${I}][sn]
@@ -321,23 +314,19 @@
         ${olt_device_id}=    Get OLTDeviceID From OLT List    ${olt_serial_number}
         Enable Device    ${olt_device_id}
     END
-    Current State Test All Onus    omci-flows-pushed
+    Run Keyword If    "${workflow}"=="DT"    Perform Sanity Test DT
+    ...    ELSE IF    "${workflow}"=="TT"    Perform Sanity Test TT
+    ...    ELSE       Perform Sanity Test
     Run Keyword If    ${usekill2restart}    Kill And Check Onu Adaptor    ${namespace}
     ...    ELSE    Restart And Check Onu Adaptor    ${namespace}
-    Current State Test All Onus    omci-flows-pushed
-    Wait for Ports in ONOS for all OLTs    ${onos_ssh_connection}    ${num_all_onus}    BBSM    ${timeout}
-    Wait Until Keyword Succeeds    ${timeout}    2s    Verify Eapol Flows Added    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}
-    ...    ${num_all_onus}
-    ${flowsresult}=    Execute ONOS CLI Command    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}    flows -s
-    log     ${flowsresult}
+    Run Keyword If    "${workflow}"=="DT"    Perform Sanity Test DT    True
+    ...    ELSE IF    "${workflow}"=="TT"    Perform Sanity Test TT    True
+    ...    ELSE       Perform Sanity Test    True
     Disable Onu Device
-    Current State Test All Onus    tech-profile-config-delete-success
+    ${alternativeonustates}=  Create List     omci-flows-deleted    omci-admin-lock
+    Current State Test All Onus    tech-profile-config-delete-success    alternativeonustate=${alternativeonustates}
     Wait for all ONU Ports in ONOS Disabled    ${onos_ssh_connection}
-    # Wait for Ports in ONOS for all OLTs    ${onos_ssh_connection}    0    BBSM    ${timeout}
     Enable Onu Device
-    Current State Test All Onus    omci-flows-pushed
-    Wait for Ports in ONOS for all OLTs    ${onos_ssh_connection}    ${num_all_onus}    BBSM    ${timeout}
-    Wait Until Keyword Succeeds    ${timeout}    2s    Verify Eapol Flows Added    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}
-    ...    ${num_all_onus}
-    ${flowsresult}=    Execute ONOS CLI Command    ${ONOS_SSH_IP}    ${ONOS_SSH_PORT}    flows -s
-    log     ${flowsresult}
+    Run Keyword If    "${workflow}"=="DT"    Perform Sanity Test DT    True
+    ...    ELSE IF    "${workflow}"=="TT"    Perform Sanity Test TT    True
+    ...    ELSE       Perform Sanity Test    True
diff --git a/tests/openonu-go-adapter/Voltha_ONUStateTests.robot b/tests/openonu-go-adapter/Voltha_ONUStateTests.robot
index a46ae97..3228783 100755
--- a/tests/openonu-go-adapter/Voltha_ONUStateTests.robot
+++ b/tests/openonu-go-adapter/Voltha_ONUStateTests.robot
@@ -446,7 +446,8 @@
     ${alternative_onu_reason}=    Set Variable If
     ...    '${state2checkafterdisable}'=='tech-profile-config-delete-success'    omci-flows-deleted
     ...    '${state2checkafterdisable}'=='omci-admin-lock'    tech-profile-config-delete-success    ${EMPTY}
-    Current State Test All Onus    ${state2checkafterdisable}    alternativeonustate=${alternative_onu_reason}
+    ${alternativeonustates}=  Create List     ${alternative_onu_reason}
+    Current State Test All Onus    ${state2checkafterdisable}    alternativeonustate=${alternativeonustates}
     Log Ports
     #check no port is enabled in ONOS
     Wait for Ports in ONOS for all OLTs    ${onos_ssh_connection}    0    BBSM
@@ -460,8 +461,9 @@
     [Documentation]    This keyword power off/on all onus and checks the states.
     Power Off ONU Device    ${namespace}
     Sleep    5s
+    ${alternativeonustates}=  Create List     omci-flows-deleted
     Current State Test All Onus    tech-profile-config-delete-success
-    ...    ENABLED    DISCOVERED    UNREACHABLE    alternativeonustate=omci-flows-deleted
+    ...    ENABLED    DISCOVERED    UNREACHABLE    alternativeonustate=${alternativeonustates}
     Power On ONU Device    ${namespace}
     Current State Test All Onus    ${state2test}
 
@@ -472,8 +474,9 @@
         ${onu_device_id}=    Get Device ID From SN    ${src['onu']}
         Reboot ONU    ${onu_device_id}   False
     END
+    ${alternativeonustates}=  Create List     omci-flows-deleted
     Run Keyword Unless    ${has_dataplane}    Current State Test All Onus    tech-profile-config-delete-success
-    ...   ENABLED    DISCOVERED    REACHABLE    alternativeonustate=omci-flows-deleted
+    ...   ENABLED    DISCOVERED    REACHABLE    alternativeonustate=${alternativeonustates}
     Sleep    5s
     Run Keyword Unless    ${has_dataplane}    Do Disable Enable Onu Test    checkstatebeforedisable=False
     ...    state2checkafterdisable=omci-admin-lock
