diff --git a/.gitignore b/.gitignore
index d4aa5c2..fee07ae 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,4 @@
 .pydevproject
 models
 .vscode/
+**/*.log
diff --git a/csit/common-library.robot b/csit/common-library.robot
index e8a9640..871e7ef 100644
--- a/csit/common-library.robot
+++ b/csit/common-library.robot
@@ -120,7 +120,18 @@
     Log  Received response from policy ${resp.text}
     [return]  ${resp}
 
-QueryPrometheus ${query}
-    ${resp}=  GET http://localhost:30259/api/v1/query?query=${query}  expected_status=200
-    Log  Received response from policy ${resp.text}
-    [return]  ${resp}
+QueryPrometheus
+    [Arguments]  ${query}
+    ${params}=  Create Dictionary  query=${query}
+    ${resp}=  GET  http://localhost:30259/api/v1/query  ${params}
+    Status Should Be    OK
+    Log  Received response from Prometheus ${resp.text}
+    [return]  ${resp.json()}
+
+ValidateResponseTime
+    [Arguments]  ${job}  ${uri}  ${method}  ${timeLimit}
+    [Documentation]  Check if uri response is under the required time
+    ${resp}=  QueryPrometheus  http_server_requests_seconds_sum{uri="${uri}",method="${method}",job="${job}"}/http_server_requests_seconds_count{uri="${uri}",method="${method}",job="${job}"}
+    ${rawNumber}=  Evaluate  ${resp['data']['result'][0]['value'][1]}
+    ${actualTime}=   Set Variable  ${rawNumber * ${1000}}
+    Should Be True   ${actualTime} <= ${timeLimit}
diff --git a/csit/pap/plans/setup.sh b/csit/pap/plans/setup.sh
index b656ef5..4c77acc 100755
--- a/csit/pap/plans/setup.sh
+++ b/csit/pap/plans/setup.sh
@@ -37,15 +37,8 @@
 sleep 10
 unset http_proxy https_proxy
 
-POLICY_PAP_IP=$(get-instance-ip.sh policy-pap)
 POLICY_PAP_PORT=30442
-POLICY_API_IP=$(get-instance-ip.sh policy-api)
 POLICY_API_PORT=30440
-MARIADB_IP=$(get-instance-ip.sh mariadb)
-
-echo PAP IP IS "${POLICY_PAP_IP}"
-echo API IP IS "${POLICY_API_IP}"
-echo MARIADB IP IS "${MARIADB_IP}"
 
 # wait for the app to start up
 "${SCRIPTS}"/wait_for_rest.sh localhost "${POLICY_PAP_PORT}"
@@ -55,8 +48,6 @@
 NODETEMPLATES=${WORKSPACE}/models/models-examples/src/main/resources/nodetemplates
 
 ROBOT_VARIABLES=""
-ROBOT_VARIABLES="${ROBOT_VARIABLES} -v POLICY_PAP_IP:${POLICY_PAP_IP}"
-ROBOT_VARIABLES="${ROBOT_VARIABLES} -v POLICY_API_IP:${POLICY_API_IP}"
 ROBOT_VARIABLES="${ROBOT_VARIABLES} -v POLICY_PAP_PORT:${POLICY_PAP_PORT}"
 ROBOT_VARIABLES="${ROBOT_VARIABLES} -v POLICY_API_PORT:${POLICY_API_PORT}"
 ROBOT_VARIABLES="${ROBOT_VARIABLES} -v DATA:${DATA}"
diff --git a/csit/pap/plans/testplan.txt b/csit/pap/plans/testplan.txt
index 1e5b1f9..4fac102 100644
--- a/csit/pap/plans/testplan.txt
+++ b/csit/pap/plans/testplan.txt
@@ -1,3 +1,4 @@
 # Test suites are relative paths under [policy/docker.git]/csit/[project]/tests.
 # Place the suites in run order.
 pap-test.robot
+pap-slas.robot
diff --git a/csit/pap/tests/pap-slas.robot b/csit/pap/tests/pap-slas.robot
new file mode 100644
index 0000000..045530a
--- /dev/null
+++ b/csit/pap/tests/pap-slas.robot
@@ -0,0 +1,60 @@
+*** Settings ***
+Library    Collections
+Library    RequestsLibrary
+Library    OperatingSystem
+Library    json
+Resource    ${CURDIR}/../../common-library.robot
+
+*** Keywords ***
+ValidateResponseTimeForPap
+    [Arguments]  ${uri}  ${method}
+    [Documentation]  Check if uri response is under the 500ms required time for pap metrics
+    ValidateResponseTime  pap-metrics  ${uri}  ${method}  500
+
+*** Test Cases ***
+WaitForPrometheusServer
+    [Documentation]  Sleep time to wait for Prometheus server to gather all metrics
+    Sleep    1 minute
+
+ValidateResponseTimeForHealthcheck
+    [Documentation]  Validate component healthcheck response time
+    ValidateResponseTimeForPap  /healthcheck  GET
+
+ValidateResponseTimeForSystemHealthcheck
+    [Documentation]  Validate if system healthcheck response time is under 1000ms
+    ValidateResponseTime  pap-metrics  /components/healthcheck  GET  10000
+
+ValidateResponseTimeForStatistics
+    [Documentation]  Validate statistics response time
+    ValidateResponseTimeForPap  /statistics  GET
+
+# TODO: includes notification, so always over 500ms
+# ValidateResponseTimeCreateGroup
+#     [Documentation]  Validate create group response time
+#     ValidateResponseTimeForPap  /pdps/groups/batch  POST
+
+ValidateResponseTimeQueryPolicyAudit
+    [Documentation]  Validate query audits response time
+    ValidateResponseTimeForPap  /policies/audit  GET
+
+ValidateResponseTimeUpdateGroup
+    [Documentation]  Validate pdps/group response time
+    ValidateResponseTimeForPap  /pdps/groups/{name}  PUT
+
+ValidatePolicyDeploymentTime
+    [Documentation]  Check if deployment of policy is under 2000ms
+    ${resp}=  QueryPrometheus  pap_policy_deployments_seconds_sum{operation="deploy",status="SUCCESS"}/pap_policy_deployments_seconds_count{operation="deploy",status="SUCCESS"}
+    ${rawNumber}=  Evaluate  ${resp['data']['result'][0]['value'][1]}
+    ${actualTime}=   Set Variable  ${rawNumber * ${1000}}
+    Should Be True   ${actualTime} <= ${2000}
+
+ValidateResponseTimeDeletePolicy
+    [Documentation]  Check if undeployment of policy is under 2000ms
+    ${resp}=  QueryPrometheus  pap_policy_deployments_seconds_sum{operation="undeploy",status="SUCCESS"}/pap_policy_deployments_seconds_count{operation="undeploy",status="SUCCESS"}
+    ${rawNumber}=  Evaluate  ${resp['data']['result'][0]['value'][1]}
+    ${actualTime}=   Set Variable  ${rawNumber * ${1000}}
+    Should Be True   ${actualTime} <= ${2000}
+
+ValidateResponseTimeDeleteGroup
+    [Documentation]  Validate delete group response time
+    ValidateResponseTimeForPap  /pdps/groups/{name}  DELETE
diff --git a/csit/pap/tests/pap-test.robot b/csit/pap/tests/pap-test.robot
index c417a83..a4f0853 100644
--- a/csit/pap/tests/pap-test.robot
+++ b/csit/pap/tests/pap-test.robot
@@ -12,6 +12,18 @@
     ${resp}=  PerformGetRequest  ${POLICY_PAP_PORT}  ${url}  200  null  ${auth}
     [return]  ${resp}
 
+ValidateResponseTimeForPap
+    [Arguments]  ${uri}  ${method}
+    [Documentation]  Check if uri response is under the required time for pap metrics
+    ValidateResponseTime  pap-metrics  ${uri}  ${method}  500
+
+ValidateDeploymentTime
+    [Documentation]  Check if deployment of policy is under 2000ms
+    ${resp}=  QueryPrometheus  pap_policy_deployments_seconds_sum{operation="deploy",status="SUCCESS"}/pap_policy_deployments_seconds_count{operation="deploy",status="SUCCESS"}
+    ${rawNumber}=  Evaluate  ${resp['data']['result'][0]['value'][1]}
+    ${actualTime}=   Set Variable  ${rawNumber * ${1000}}
+    Should Be True   ${actualTime} <= ${2000}
+
 *** Test Cases ***
 LoadPolicy
     [Documentation]  Create a policy named 'onap.restart.tca' and version '1.0.0' using specific api
@@ -126,3 +138,16 @@
 QueryPdpGroupsAfterDelete
     [Documentation]    Verify PdpGroups after delete
     QueryPdpGroups  1  defaultGroup  ACTIVE  0  null  null  null
+
+# ValidateSlaForPap
+#     [Documentation]  Run checks against Prometheus server to check response time
+#     Sleep    30s
+#     ValidateDeploymentTime
+#     ValidateResponseTime  pap-metrics  /components/healthcheck  GET  10000
+#     ValidateResponseTimeForPap  /healthcheck  GET
+#     ValidateResponseTimeForPap  /statistics  GET
+#     ValidateResponseTimeForPap  /policies/audit  GET
+#     ValidateResponseTimeForPap  /pdps/groups/{name}  PUT
+#     ValidateResponseTimeForPap  /pdps/policies/{name}  DELETE
+#     ValidateResponseTimeForPap  /pdps/groups/{name}  DELETE
+#     ValidateResponseTimeForPap  /pdps/groups/batch  POST
diff --git a/csit/run-project-csit.sh b/csit/run-project-csit.sh
index a3837b0..0f15c75 100755
--- a/csit/run-project-csit.sh
+++ b/csit/run-project-csit.sh
@@ -27,17 +27,18 @@
 function on_exit(){
     rc=$?
     if [[ ${WORKSPACE} ]]; then
-        if [[ ${WORKDIR} ]]; then
-            rsync -av "${WORKDIR}/" "${WORKSPACE}/csit/archives/${PROJECT}"
-        fi
         # Record list of active docker containers
-        docker ps
+        docker ps --format "table {{ .Names }}\t{{ .Status }}"
 
         # Show the logs from all containers
-        docker-compose -f "${WORKSPACE}/csit/docker-compose-all.yml" logs
+        docker-compose -f "${WORKSPACE}/csit/docker-compose-all.yml" logs > docker_compose.log
 
         # show memory consumption after all docker instances initialized
         docker_stats
+
+        if [[ ${WORKDIR} ]]; then
+            rsync -av "${WORKDIR}/" "${WORKSPACE}/csit/archives/${PROJECT}"
+        fi
     fi
     # Run teardown script plan if it exists
     cd "${TESTPLANDIR}/plans/"
@@ -57,25 +58,20 @@
     # General memory details
     if [ "$(uname -s)" == "Darwin" ]
     then
-        echo "> top -l1 | head -10"
         sh -c "top -l1 | head -10"
         echo
     else
-        echo "> top -bn1 | head -3"
         sh -c "top -bn1 | head -3"
         echo
 
-        echo "> free -h"
         sh -c "free -h"
         echo
     fi
 
     # Memory details per Docker
-    echo "> docker ps"
-    docker ps
+    docker ps --format "table {{ .Names }}\t{{ .Status }}"
     echo
 
-    echo "> docker stats --no-stream"
     docker stats --no-stream
     echo
 }
diff --git a/csit/stop-all.sh b/csit/stop-all.sh
index 4e6b0aa..9adfcf3 100755
--- a/csit/stop-all.sh
+++ b/csit/stop-all.sh
@@ -23,4 +23,4 @@
 
 source "${SCRIPTS}"/get-versions.sh
 
-docker-compose -f "${SCRIPTS}"/docker-compose-all.yml down
+docker-compose -f "${SCRIPTS}"/docker-compose-all.yml down -v
diff --git a/csit/wait_for_port.sh b/csit/wait_for_port.sh
index 5a8be25..6dcb3ca 100755
--- a/csit/wait_for_port.sh
+++ b/csit/wait_for_port.sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # ============LICENSE_START====================================================
 #  Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
-#  Modifications Copyright (C) 2022 Nordix Foundation.
+#  Modifications Copyright (C) 2022-2023 Nordix Foundation.
 # =============================================================================
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -64,7 +64,7 @@
     do
         if command -v docker > /dev/null 2>&1
         then
-            docker ps
+            docker ps --format "table {{ .Names }}\t{{ .Status }}"
         fi
 
         nc -vz "$host" "$port"
diff --git a/csit/wait_for_rest.sh b/csit/wait_for_rest.sh
index bf47ccf..a64c306 100755
--- a/csit/wait_for_rest.sh
+++ b/csit/wait_for_rest.sh
@@ -54,7 +54,7 @@
     do
         if command -v docker > /dev/null 2>&1
         then
-            docker ps
+            docker ps --format "table {{ .Names }}\t{{ .Status }}"
         fi
         curl "http://$host:$port" > /dev/null 2>&1
         rc=$?
