aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/dcaegen2/testcases/assets/certs/outdated.crt24
-rw-r--r--tests/dcaegen2/testcases/assets/certs/outdated.key27
-rw-r--r--tests/dcaegen2/testcases/assets/json_events/ves7_batch_valid.json67
-rw-r--r--tests/dcaegen2/testcases/dcae_ves.robot299
-rw-r--r--tests/dcaegen2/testcases/resources/dcae_keywords.robot105
-rw-r--r--tests/dcaegen2/testcases/resources/dcae_properties.robot55
6 files changed, 308 insertions, 269 deletions
diff --git a/tests/dcaegen2/testcases/assets/certs/outdated.crt b/tests/dcaegen2/testcases/assets/certs/outdated.crt
new file mode 100644
index 00000000..8768cff7
--- /dev/null
+++ b/tests/dcaegen2/testcases/assets/certs/outdated.crt
@@ -0,0 +1,24 @@
+-----BEGIN CERTIFICATE-----
+MIIEGDCCAgACFFgwd9DMpQEwVkrCkzJPGRq6xW3EMA0GCSqGSIb3DQEBCwUAMEUx
+CzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRl
+cm5ldCBXaWRnaXRzIFB0eSBMdGQwHhcNMTkxMTE4MTIyMzIyWhcNMTkxMTE5MTIy
+MzIyWjBMMQswCQYDVQQGEwJQTDELMAkGA1UECAwCRGwxEDAOBgNVBAcMB1dyb2Ns
+YXcxDjAMBgNVBAoMBU5va2lhMQ4wDAYDVQQLDAVOb2tpYTCCASIwDQYJKoZIhvcN
+AQEBBQADggEPADCCAQoCggEBALIx4HC0SskTvE5dzcfHcrjsvBvKJeum7NkVvpk2
+4hxhcynfmhM6wJ0VJV0x6B4mHe0ja4tJZdY5IyfRMV/5Q79hiiLmwg6hgjXX7MKn
+7JnFCX1iMj+zXlQzCLgXVpB6ruBAMImiBjGn2MlTIHKthsNGX6Qf+hDmJqEfoRuI
+jp7SwI4BvN084ijIpNWARdxAsAQ1qJjrCLhvJ9Ob8btCqclAzv3ZPAcOD6DjORx5
+JxIMMJ6bXfHgmsECy4dbGBMnieKF1O8NNdoypVCE+NuqckSmE2JQiHIkRHZ5Bul4
+ihk+wSR2WxiNOOuMN7bp+0Yan44ritMB06wpFdp4jGMvyTsCAwEAATANBgkqhkiG
+9w0BAQsFAAOCAgEAYQEi9+o6+nlMvXJlal62QPoBPOQqFKWTBd5X0Wv+L0K/5yAO
+S2Sv0woQyDLydjsglNLEJB3VJuPQsoRZDGqv9aThJ0j+/BzylbkxwcReMs7P+rl2
+DIeqjdvsato3ZB0Rtp28jBDI7HrvBfmGQQFUaeBRI7eybe3AXqy8INozkdAGeeIr
+FxMmrZ0z7eQj5T8CE/ebmsbdIDRPmI672V8Tojd6nQSZFAG9/9q6f/iK45Mx6Qls
+Qqfl+bdL3ey0aNsUR6yWNa2DBA15HW9GvUQuMxeGDNQn0bxib0KsKgxfbX4vLYVF
+RgC/c1td9LJoSMl3tURoZwRfAHFX82jDxAExtlTMvZMleMlP3O/YRB0SNieFeidE
+O3OzuCHBvEpQEcDdUMxc4XfCnV1nE6QHLsBwz3Zwt4ZnL6dS8iBE0p3NN5qHVWF7
+Vxb59ZYPCrTQbgTsKlfHyX8aB2Nk0rCgDFBbov7gVevOHjIWqmDyFhrNEJEmXO+3
+MM8UrImojbr4kn89VsujMP62jMqyXifuejGzkoHf6tBuTENiNxwmPwiX+ZD5etVE
+kh8c7aoRZi6zv+vMUu6U1RpYUEPGMTGZKBsuk+2IABhfD5UcneGR3kX2Vtb34EZE
+8i29bJY7CmzNBUlkbubqv8axklF2hxiN7w8oRLj+tH8jnVMMP47KuHaNx+8=
+-----END CERTIFICATE-----
diff --git a/tests/dcaegen2/testcases/assets/certs/outdated.key b/tests/dcaegen2/testcases/assets/certs/outdated.key
new file mode 100644
index 00000000..860b30fd
--- /dev/null
+++ b/tests/dcaegen2/testcases/assets/certs/outdated.key
@@ -0,0 +1,27 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIEpQIBAAKCAQEAsjHgcLRKyRO8Tl3Nx8dyuOy8G8ol66bs2RW+mTbiHGFzKd+a
+EzrAnRUlXTHoHiYd7SNri0ll1jkjJ9ExX/lDv2GKIubCDqGCNdfswqfsmcUJfWIy
+P7NeVDMIuBdWkHqu4EAwiaIGMafYyVMgcq2Gw0ZfpB/6EOYmoR+hG4iOntLAjgG8
+3TziKMik1YBF3ECwBDWomOsIuG8n05vxu0KpyUDO/dk8Bw4PoOM5HHknEgwwnptd
+8eCawQLLh1sYEyeJ4oXU7w012jKlUIT426pyRKYTYlCIciREdnkG6XiKGT7BJHZb
+GI0464w3tun7RhqfjiuK0wHTrCkV2niMYy/JOwIDAQABAoIBAQCSYqLsM1AUa2AQ
+SMMZ0WEPRXsqoSARvKlplJFlME8D3ZJL3eKm1WcSJCLzsmHrEokXHDfmzr8YAww8
+U3/qRc0/1RMzpLnaZxeev+lB581YbSNkm1yINAPTy7Dn+lQkkIREuLam+jF4bViL
+2vwW+TJyDMfY/mPhqhAl4OPqyH3RPhSmC23zkPsqFU2ZXJQB/7CcDP9OtXN9OLM5
+/hjDTW0/+0/xLjzBDJbrzUSsBCD03/vis+mvZJ/pN31ZK+/zXz62yzGqN++bnoSA
+mlAUL6QrkVER9dKoLwUoNncbbsmeYnNSvJqmPNgdm0BSDKVzP1u0lvX93nSsRG0c
+vrHXb56xAoGBAOk5WwOfRtqUfkbGdJoX5R+PzRq9WGb6ZAquD8ST3rOtoQhPBQDI
+Cx26UbhJyH2xKhME8ZI0rjW0llI/erJbiLK9v668HzfqgoFZIly3t7nwmstFvoo9
+1CUo9TPsppGKQLo1iJV6iJIH14kPlOtSwIbGd9ixzqp1rBCIvwEi+Fq3AoGBAMOY
+x9ZlHmy2kmXTRjojf0zNPkkBsd8KatvH9AgYoUnulQBqdfCiTJTB+4JRyZ7sE6su
+mbtKP3SM9FJTGg0bNCDO2fwjkqia5WyssI9sVITwoPw5o11mR7WEXtfM1UtgLJbo
+xEN/TaFLoltW+kNaS0GzsJBzZvp8mbcmoFbx9hGdAoGAGVHjwqnpHFPgvbhP8mbD
+tkB7aPrDfTKT5+Drz1CqbeFcyTUi+um84zZWJubDwHmacsQnodLcUvJPG5DOtkxf
+s+ALzmGYFg78qiROKbi8VpB7jbP9sq5xuLMQo9l+X/CdhFnJgUjzSL9XNAcgCMhM
+JJWpbzomkLUDwCvIaMwuIFMCgYEAwv81exAkXM1G9izC/oMVDkQvrCj8YxfHoISf
+TNMBOOuZsGhyXAvxvPwG+cz/7Gf+09IJgSZsTI2ZpdkjR52vQmX1++Ca/Wwu/UDM
+ZK/jMwWR+OKdcyfcpaHpy8pxekvPKEO2JnRruDnnCpiTt0H1dPLnO5tRNrexp13i
+y8s9PiECgYEAzCk/b/62WIpEb7BPO19I7XR8xAT36QINiTJrOHqrh6iexD9T63Zf
+0OuNsnLna2uvPRsSKnoU8a0/frEKIu45LBrUh1XqKjgRP1PMktAI6KGwRvPXTzGT
+WVgznP2uU6wCyvd6obRfcX79egDeZrGfJ0xnuesaIEeYM+5CFgxqmHo=
+-----END RSA PRIVATE KEY-----
diff --git a/tests/dcaegen2/testcases/assets/json_events/ves7_batch_valid.json b/tests/dcaegen2/testcases/assets/json_events/ves7_batch_valid.json
new file mode 100644
index 00000000..1db81eed
--- /dev/null
+++ b/tests/dcaegen2/testcases/assets/json_events/ves7_batch_valid.json
@@ -0,0 +1,67 @@
+
+{
+ "eventList": [
+ {
+ "commonEventHeader": {
+ "version": "4.0.1",
+ "vesEventListenerVersion": "7.0.1",
+ "domain": "fault",
+ "eventName": "Fault_Vscf:Acs-Ericcson_PilotNumberPoolExhaustion",
+ "eventId": "fault0000250",
+ "sequence": 1,
+ "priority": "High",
+ "reportingEntityId": "cc305d54-75b4-431b-adb2-eb6b9e541234",
+ "reportingEntityName": "ibcx0001vm002oam0011234",
+ "sourceId": "de305d54-75b4-431b-adb2-eb6b9e546014",
+ "sourceName": "scfx0001vm002cap001",
+ "nfVendorName": "Ericsson",
+ "nfNamingCode": "scfx",
+ "nfcNamingCode": "ssc",
+ "startEpochMicrosec": 1413378172000000,
+ "lastEpochMicrosec": 1413378172000000,
+ "timeZoneOffset": "UTC-05:30"
+ },
+ "faultFields": {
+ "faultFieldsVersion": "4.0",
+ "alarmCondition": "PilotNumberPoolExhaustion",
+ "eventSourceType": "other",
+ "specificProblem": "Calls cannot complete - pilot numbers are unavailable",
+ "eventSeverity": "CRITICAL",
+ "vfStatus": "Active",
+ "alarmAdditionalInformation": {
+ "PilotNumberPoolSize": "1000"
+ }
+ }
+ },
+ {
+ "commonEventHeader": {
+ "version": "4.0.1",
+ "vesEventListenerVersion": "7.0.1",
+ "domain": "fault",
+ "eventName": " Fault_Vscf:Acs-Ericcson_RecordingServerUnreachable",
+ "eventId": "fault0000251",
+ "sequence": 0,
+ "priority": "High",
+ "reportingEntityId": "cc305d54-75b4-431b-adb2-eb6b9e541234",
+ "reportingEntityName": "ibcx0001vm002oam0011234",
+ "sourceId": "de305d54-75b4-431b-adb2-eb6b9e546014",
+ "sourceName": "scfx0001vm002cap001",
+ "nfVendorName": "Ericsson",
+ "nfNamingCode": "scfx",
+ "nfcNamingCode": "ssc",
+ "startEpochMicrosec": 1413378172000010,
+ "lastEpochMicrosec": 1413378172000010,
+ "timeZoneOffset": "UTC-05:30"
+ },
+ "faultFields": {
+ "faultFieldsVersion": "4.0",
+ "alarmCondition": "RecordingServerUnreachable",
+ "eventSourceType": "other",
+ "specificProblem": "Recording server unreachable",
+ "eventSeverity": "CRITICAL",
+ "vfStatus": "Active"
+ }
+ }
+ ]
+}
+
diff --git a/tests/dcaegen2/testcases/dcae_ves.robot b/tests/dcaegen2/testcases/dcae_ves.robot
index c035423d..f9a97b05 100644
--- a/tests/dcaegen2/testcases/dcae_ves.robot
+++ b/tests/dcaegen2/testcases/dcae_ves.robot
@@ -1,153 +1,72 @@
*** Settings ***
-Documentation Testing DCAE VES Listener with various event feeds from VoLTE, vDNS, vFW and cCPE use scenarios
-Library RequestsLibrary
+Documentation Run healthchecks for DCAE VES
+... Testing /eventListener/v7 and /eventListener/v7/eventBatch endpoints for DCEA VES v7.
+... Testing /eventListener/v5 and /eventListener/v5/eventBatch for DCEA VES v5 with various event feeds from VoLTE, vFW and PNF
+Library RequestsLibrary
Library OperatingSystem
Library Collections
Library DcaeLibrary
-Resource resources/dcae_keywords.robot
-Resource ../../common.robot
-Resource resources/dcae_properties.robot
-Test Setup Cleanup VES Events
+Resource ./resources/dcae_keywords.robot
+Test Teardown Cleanup VES Events
Suite Setup Run keywords VES Collector Suite Setup DMaaP Create sessions Create header
-Suite Teardown VES Collector Suite Shutdown DMaaP
-
-*** Variables ***
-${VESC_URL_HTTPS} https://%{VESC_IP}:8443
-${VESC_URL} http://%{VESC_IP}:8080
-${VES_ANY_EVENT_PATH} /eventListener/v5
-${VES_BATCH_EVENT_PATH} /eventListener/v5/eventBatch
-${VES_THROTTLE_STATE_EVENT_PATH} /eventListener/v5/clientThrottlingState
-${VES_ENDPOINT} /eventListener/v7
-${VES_VALID_JSON_V7} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves7_valid.json
-${VES_INVALID_JSON_V7} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves7_invalid.json
-${EVENT_DATA_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_single_fault_event.json
-${EVENT_MEASURE_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_vfirewall_measurement.json
-${EVENT_DATA_FILE_BAD} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_single_fault_event_bad.json
-${EVENT_BATCH_DATA_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_fault_eventlist_batch.json
-${EVENT_THROTTLING_STATE_DATA_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_fault_provide_throttle_state.json
-${EVENT_PNF_REGISTRATION} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_pnf_registration_event.json
-
-#DCAE Health Check
-${CONFIG_BINDING_URL} http://localhost:8443
-${CB_HEALTHCHECK_PATH} /healthcheck
-${CB_SERVICE_COMPONENT_PATH} /service_component/
-${VES_Service_Name1} dcae-controller-ves-collector
-${VES_Service_Name2} ves-collector-not-exist
+Suite Teardown VES Collector Suite Shutdown DMaaP
*** Test Cases ***
-#No authorization tests
+#No authentication tests
VES Collector HTTP Health Check
[Tags] DCAE-VESC-R1
- [Documentation] Ves Collector Health Check
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=*/* X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Get Request ${suite_dcae_vesc_url_session} /healthcheck headers=${headers}
- Should Be Equal As Strings ${resp.status_code} 200
+ [Documentation] Run healthcheck
+ Run Healthcheck
Publish Single VES VNF Measurement Event API V7
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 Response
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${resp}= Publish Event To VES Collector No Auth ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546015
- Should Be Equal As Strings ${ret} true
-
+ [Documentation] Post single event with valid data to /eventListener/v7 endpoint and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} 202 ab305d54-85b4-a31b-7db2-fb6b9e546015
Publish Single VES VNF Measurement Event with wrong JSON
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 400 Response
- ${evtdata}= Get Data From File ${VES_INVALID_JSON_V7}
- ${resp}= Publish Event To VES Collector No Auth ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 400
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ [Documentation] Post single event with invalid data to /eventListener/v7 endpoint and expect 400 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_EVENTLISTENER_V7} ${VES_INVALID_JSON_V7} 400
Publish Single VES VNF Measurement Event with No Auth over HTTPS
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect ConnectionError
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${err_msg}= Run Keyword And Expect Error ConnectionError:* Publish Event To VES Collector ${VES_ENDPOINT} ${evtdata}
- Should Contain ${err_msg} Errno 111
- Log Recieved error message ${err_msg}
+ [Documentation] Post single event over HTTPS with authentication disabled and expect ConnectionError
+ @{err_content} Create List Errno 111
+ Send Request And Expect Error Publish Event To VES Collector ${https_basic_auth_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} ConnectionError:* @{err_content}
Publish Single VES VoLTE Fault Event
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 Response
- ${evtdata}= Get Data From File ${EVENT_DATA_FILE}
- ${resp}= Publish Event To VES Collector No Auth ${VES_ANY_EVENT_PATH} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546015
- Should Be Equal As Strings ${ret} true
+ [Documentation] Post single event with valid data to /eventListener/v5 endpoint and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_ANY_EVENT_PATH} ${EVENT_DATA_FILE} 202 ab305d54-85b4-a31b-7db2-fb6b9e546015
Publish Single VES VNF Measurement Event API V5
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 Response
- ${evtdata}= Get Data From File ${EVENT_MEASURE_FILE}
- ${resp}= Publish Event To VES Collector No Auth ${VES_ANY_EVENT_PATH} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive 0b2b5790-3673-480a-a4bd-5a00b88e5af6
- Should Be Equal As Strings ${ret} true
+ [Documentation] Post single measurement event with valid data to /eventListener/v5 endpoint and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_ANY_EVENT_PATH} ${EVENT_MEASURE_FILE} 202 0b2b5790-3673-480a-a4bd-5a00b88e5af6
Publish VES VoLTE Fault Batch Events
[Tags] DCAE-VESC-R1
- [Documentation] Post batched events and expect 202 Response
- ${evtdata}= Get Data From File ${EVENT_BATCH_DATA_FILE}
- ${resp}= Publish Event To VES Collector No Auth ${VES_BATCH_EVENT_PATH} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546025
- Should Be Equal As Strings ${ret} true
-
+ [Documentation] Post single event with valid data to /eventListener/v5/eventBatch endpoint and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_BATCH_EVENT_PATH} ${EVENT_BATCH_DATA_FILE} 202 ab305d54-85b4-a31b-7db2-fb6b9e546025
Publish VES Event With Invalid Method
[Tags] DCAE-VESC-R1
- [Documentation] Use invalid Put instead of Post method to expect 405 response
- ${evtdata}= Get Data From File ${EVENT_DATA_FILE}
+ [Documentation] Use invalid Put instead of Post method to expect 405 Response Status Code
Log Send HTTP Request with invalid method Put instead of Post
- ${resp}= Publish Event To VES Collector With Put Method No Auth ${VES_ANY_EVENT_PATH} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 405
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ Send Request And Validate Response Publish Event To VES Collector With Put Method ${http_session} ${VES_ANY_EVENT_PATH} ${EVENT_DATA_FILE} 405
Publish VES Event With Invalid URL Path
[Tags] DCAE-VESC-R1
- [Documentation] Use invalid url path to expect 404 response
- ${evtdata}= Get Data From File ${EVENT_DATA_FILE}
+ [Documentation] Post single event to invalid url path and expect 404 Response Status Code
Log Send HTTP Request with invalid /listener/v5/ instead of /eventListener/v5 path
- ${resp}= Publish Event To VES Collector No Auth /listener/v5/ ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 404
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} /listener/v5/ ${EVENT_DATA_FILE} 404
Publish PNF Registration Event
[Tags] DCAE-VESC-R1
- [Documentation] Post PNF registration event and expect 200 Response
- ${evtdata}= Get Data From File ${EVENT_PNF_REGISTRATION}
- ${resp}= Publish Event To VES Collector No Auth ${VES_ANY_EVENT_PATH} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive QTFCOC540002E-reg
- Should Be Equal As Strings ${ret} true
-
+ [Documentation] Post PNF registration event and expect 200 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_ANY_EVENT_PATH} ${EVENT_PNF_REGISTRATION} 202 QTFCOC540002E-reg
# Auth by certificate and basic auth username / password
@@ -155,130 +74,110 @@ Enable VESC HTTPS with certBasicAuth
[Tags] DCAE-VESC-R1
[Documentation] Enable VESC Https and Authentication and Run Health Check
Enable VESC with certBasicAuth
+ Run Healthcheck
+
+Healthcheck with Outdated Cert
+ [Tags] DCAE-VESC-R1
+ [Documentation] Run healthcheck with outdated cert
${uuid}= Generate UUID
${headers}= Create Dictionary Accept=*/* X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Get Request ${suite_dcae_vesc_url_session} /healthcheck headers=${headers}
- Should Be Equal As Strings ${resp.status_code} 200
-
+ ${err_msg}= Run Keyword And Expect Error SSLError:* Get Request ${https_outdated_cert_session} /healthcheck headers=${headers}
+ Should Contain ${err_msg} bad handshake
+ Should Contain ${err_msg} certificate unknown
+ Log Recieved error message ${err_msg}
Publish Single VES Fault Event Over HTTPS
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 Response
- ${evtdata}= Get Data From File ${EVENT_DATA_FILE}
+ [Documentation] Post single event with valid data to /eventListener/v5 endpoint over HTTPS and expect 202 Response Status Code
Log Login User=${VESC_HTTPS_USER}, Pd=${VESC_HTTPS_PD}
- ${resp}= Publish Event To VES Collector ${VES_ANY_EVENT_PATH} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546015
- Should Be Equal As Strings ${ret} true
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} ${VES_ANY_EVENT_PATH} ${EVENT_DATA_FILE} 202 ab305d54-85b4-a31b-7db2-fb6b9e546015
Publish Single VES Measurement Event Over HTTPS
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 Response
- ${evtdata}= Get Data From File ${EVENT_MEASURE_FILE}
- ${resp}= Publish Event To VES Collector ${VES_ANY_EVENT_PATH} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive 0b2b5790-3673-480a-a4bd-5a00b88e5af6
- Should Be Equal As Strings ${ret} true
+ [Documentation] Post single measurement event with valid data to /eventListener/v5 endpoint over HTTPS and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} ${VES_ANY_EVENT_PATH} ${EVENT_MEASURE_FILE} 202 0b2b5790-3673-480a-a4bd-5a00b88e5af6
Publish VES Fault Batch Events Over HTTPS
[Tags] DCAE-VESC-R1
- [Documentation] Post batched events and expect 202 Response
- ${evtdata}= Get Data From File ${EVENT_BATCH_DATA_FILE}
- ${resp}= Publish Event To VES Collector ${VES_BATCH_EVENT_PATH} ${evtdata}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546025
- Should Be Equal As Strings ${ret} true
-
+ [Documentation] Post single event with valid data to /eventListener/v5/eventBatch endpoint over HTTPS and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} ${VES_BATCH_EVENT_PATH} ${EVENT_BATCH_DATA_FILE} 202 ab305d54-85b4-a31b-7db2-fb6b9e546025
Publish VES Event With Invalid URL Path HTTPS
[Tags] DCAE-VESC-R1
- [Documentation] Use invalid url path to expect 404 response
- ${evtdata}= Get Data From File ${EVENT_DATA_FILE}
+ [Documentation] Post single event to invalid url path over HTTPS and expect 404 response Status Code
Log Send HTTP Request with invalid /eventlistener/v5/ instead of /eventListener/v5 path
- ${resp}= Publish Event To VES Collector /eventlistener/v5 ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 404
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} /eventlistener/v5 ${EVENT_DATA_FILE} 404
Publish Single VES VNF Measurement Event over HTTP
[Tags] DCAE-VESC-R1
- [Documentation] Post single event over HTTP and expect 400 Response
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${resp}= Publish Event To VES Collector No Auth ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTP Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 400
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
-
+ [Documentation] Post single event over HTTP with authentication enabled and expect 400 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${http_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} 400
Publish Single VES VNF Measurement Event with certBasicAuth over HTTPS
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 Response
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${resp}= Publish Event To VES Collector ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546015
- Should Be Equal As Strings ${ret} true
+ [Documentation] Post single event with valid data and valid username/password to /eventListener/v7 endpoint over HTTPS and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} 202 ab305d54-85b4-a31b-7db2-fb6b9e546015
Publish Single VES VNF Measurement Event over HTTPS with wrong JSON
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 400 Response
- ${evtdata}= Get Data From File ${VES_INVALID_JSON_V7}
- ${resp}= Publish Event To VES Collector ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 400
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ [Documentation] Post single event with invalid data and valid username/password to /eventListener/v7 endpoint over HTTPS and expect 400 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} ${VES_EVENTLISTENER_V7} ${VES_INVALID_JSON_V7} 400
Publish Single VES VNF Measurement Event With Wrong Auth
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 401 response
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${resp}= Publish Event To VES Collector With Wrong Auth ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 401
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ [Documentation] Post single event with valid data and invalid username/password to /eventListener/v7 endpoint over HTTPS and expect 401 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_wrong_auth_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} 401
Publish Single VES VNF Measurement Event With Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 202 response
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${resp}= Publish Event To VES Collector With Cert ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 202
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
- ${ret}= DMaaP Message Receive ab305d54-85b4-a31b-7db2-fb6b9e546015
- Should Be Equal As Strings ${ret} true
+ [Documentation] Post single event with valid data and valid certificate to /eventListener/v7 endpoint over HTTPS and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_valid_cert_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} 202 ab305d54-85b4-a31b-7db2-fb6b9e546015
Publish Single VES VNF Measurement Event With Wrong Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect SSLError with bad handshake
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${err_msg}= Run Keyword And Expect Error SSLError:* Publish Event To VES Collector With Wrong Cert ${VES_ENDPOINT} ${evtdata}
- Should Contain ${err_msg} bad handshake
- Should Contain ${err_msg} certificate unknown
- Log Recieved error message ${err_msg}
+ [Documentation] Post single event with valid data and invalid certificate to /eventListener/v7 endpoint over HTTPS and expect SSLError with bad handshake
+ @{err_content} Create List bad handshake certificate unknown
+ Send Request And Expect Error Publish Event To VES Collector ${https_invalid_cert_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} SSLError:* @{err_content}
+
+Publish Single VES VNF Measurement Event With Outdated Cert
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and outdated certificate to /eventListener/v7 endpoint over HTTPS and expect SSLError with bad handshake
+ @{err_content} Create List bad handshake certificate unknown
+ Send Request And Expect Error Publish Event To VES Collector ${https_outdated_cert_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} SSLError:* @{err_content}
Publish Single VES VNF Measurement Event Without Auth And Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event and expect 401 response
- ${evtdata}= Get Data From File ${VES_VALID_JSON_V7}
- ${resp}= Publish Event To VES Collector Without Auth And Cert ${VES_ENDPOINT} ${evtdata}
- Log Receive HTTPS Status code ${resp.status_code}
- Should Be Equal As Strings ${resp.status_code} 401
- ${isEmpty}= Is Json Empty ${resp}
- Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ [Documentation] Post single event with valid data and without certificate or username/password to /eventListener/v7 endpoint over HTTPS and expect 401 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_no_cert_no_auth_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} 401
+
+Publish V7 Batch Event with certBasicAuth over HTTPS
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and valid username/password to /eventListener/v7/eventBatch endpoint over HTTPS and expect 202 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_basic_auth_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} 202 Fault_Vscf:Acs-Ericcson_PilotNumberPoolExhaustion
+
+Publish V7 Batch Event With Wrong Auth
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and invalid username/password to /eventListener/v7/eventBatch endpoint over HTTPS and expect 401 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_wrong_auth_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} 401
+
+Publish V7 Batch Event With Cert
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and valid certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect 202 Response
+ Send Request And Validate Response Publish Event To VES Collector ${https_valid_cert_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} 202 Fault_Vscf:Acs-Ericcson_PilotNumberPoolExhaustion
+
+Publish V7 Batch With Wrong Cert
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and invalid certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect SSLError with bad handshake
+ @{err_content} Create List bad handshake certificate unknown
+ Send Request And Expect Error Publish Event To VES Collector ${https_invalid_cert_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} SSLError:* @{err_content}
+
+Publish V7 Batch Event With Outdated Cert
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and outdated certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect SSLError with bad handshake
+ @{err_content} Create List bad handshake certificate unknown
+ Send Request And Expect Error Publish Event To VES Collector ${https_outdated_cert_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} SSLError:* @{err_content}
+
+Publish V7 Batch Event Without Auth And Cert
+ [Tags] DCAE-VESC-R1
+ [Documentation] Post single event with valid data and without certificate or username/password to /eventListener/v7/eventBatch endpoint over HTTPS and expect 401 Response Status Code
+ Send Request And Validate Response Publish Event To VES Collector ${https_no_cert_no_auth_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} 401
diff --git a/tests/dcaegen2/testcases/resources/dcae_keywords.robot b/tests/dcaegen2/testcases/resources/dcae_keywords.robot
index c4cdbb9c..16a8a8ae 100644
--- a/tests/dcaegen2/testcases/resources/dcae_keywords.robot
+++ b/tests/dcaegen2/testcases/resources/dcae_keywords.robot
@@ -5,31 +5,31 @@ Library DcaeLibrary
Library OperatingSystem
Library Collections
Variables ../resources/DcaeVariables.py
+Resource ../../../common.robot
Resource ../resources/dcae_properties.robot
-*** Variables ***
-${DCAE_HEALTH_CHECK_BODY} %{WORKSPACE}/tests/dcae/testcases/assets/json_events/dcae_healthcheck.json
-
-
*** Keywords ***
Create sessions
[Documentation] Create all required sessions
- Create Session dcae_vesc_url ${VESC_URL}
- Set Suite Variable ${suite_dcae_vesc_url_session} dcae_vesc_url
${auth}= Create List ${VESC_HTTPS_USER} ${VESC_HTTPS_PD}
- Create Session dcae_vesc_url_https ${VESC_URL_HTTPS} auth=${auth} disable_warnings=1
- Set Suite Variable ${suite_dcae_vesc_url_https_session} dcae_vesc_url_https
${wrong_auth}= Create List ${VESC_HTTPS_WRONG_USER} ${VESC_HTTPS_WRONG_PD}
- Create Session dcae_vesc_url_https_wrong_auth ${VESC_URL_HTTPS} auth=${wrong_auth} disable_warnings=1
- Set Suite Variable ${suite_dcae_vesc_url_https_wrong_auth_session} dcae_vesc_url_https_wrong_auth
${certs}= Create List ${VESC_ROOTCA_CERT} ${VESC_ROOTCA_KEY}
- Create Client Cert Session dcae_vesc_url_https_cert ${VESC_URL_HTTPS} client_certs=${certs} disable_warnings=1
- Set Suite Variable ${suite_dcae_vesc_url_https_cert_session} dcae_vesc_url_https_cert
${wrong_certs}= Create List ${VESC_WRONG_CERT} ${VESC_WRONG_KEY}
+ ${outdated_certs}= Create List ${VESC_OUTDATED_CERT} ${VESC_OUTDATED_KEY}
+ Create Session dcae_vesc_url ${VESC_URL}
+ Set Suite Variable ${http_session} dcae_vesc_url
+ Create Session dcae_vesc_url_https ${VESC_URL_HTTPS} auth=${auth} disable_warnings=1
+ Set Suite Variable ${https_basic_auth_session} dcae_vesc_url_https
+ Create Session dcae_vesc_url_https_wrong_auth ${VESC_URL_HTTPS} auth=${wrong_auth} disable_warnings=1
+ Set Suite Variable ${https_wrong_auth_session} dcae_vesc_url_https_wrong_auth
+ Create Client Cert Session dcae_vesc_url_https_cert ${VESC_URL_HTTPS} client_certs=${certs} disable_warnings=1
+ Set Suite Variable ${https_valid_cert_session} dcae_vesc_url_https_cert
Create Client Cert Session dcae_vesc_url_https_wrong_cert ${VESC_URL_HTTPS} client_certs=${wrong_certs} disable_warnings=1 verify=${False}
- Set Suite Variable ${suite_dcae_vesc_url_https_wrong_cert_session} dcae_vesc_url_https_wrong_cert
+ Set Suite Variable ${https_invalid_cert_session} dcae_vesc_url_https_wrong_cert
+ Create Client Cert Session dcae_vesc_url_https_outdated_cert ${VESC_URL_HTTPS} client_certs=${outdated_certs} disable_warnings=1 verify=${False}
+ Set Suite Variable ${https_outdated_cert_session} dcae_vesc_url_https_outdated_cert
Create Session dcae_vesc_url_https_wo_auth ${VESC_URL_HTTPS} disable_warnings=1
- Set Suite Variable ${suite_dcae_vesc_url_https_wo_auth_session} dcae_vesc_url_https_wo_auth
+ Set Suite Variable ${https_no_cert_no_auth_session} dcae_vesc_url_https_wo_auth
Create header
${headers}= Create Dictionary Content-Type=application/json
@@ -37,7 +37,6 @@ Create header
Get DCAE Nodes
[Documentation] Get DCAE Nodes from Consul Catalog
- #Log Creating session ${GLOBAL_DCAE_CONSUL_URL}
${session}= Create Session dcae ${GLOBAL_DCAE_CONSUL_URL}
${uuid}= Generate UUID
${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-Consul-Token=abcd1234 X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
@@ -64,7 +63,6 @@ DCAE Node Health Check
${len}= Get Length ${StatusList}
Should Not Be Equal As Integers ${len} 0
DCAE Check Health Status ${NodeName} ${StatusList[0]} Serf Health Status
- #Run Keyword if ${len} > 1 DCAE Check Health Status ${NodeName} ${StatusList[1]} Serf Health Status
DCAE Check Health Status
[Arguments] ${NodeName} ${ItemStatus} ${CheckType}
@@ -128,50 +126,47 @@ Get DCAE Service Component Status
${resp}= Get Request dcae-service-component ${urlpath}
[Return] ${resp}
-Publish Event To VES Collector No Auth
- [Documentation] Send an event to VES Collector
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Post Request ${suite_dcae_vesc_url_session} ${evtpath} data=${evtdata} headers=${suite_headers}
- [Return] ${resp}
-
Publish Event To VES Collector
[Documentation] Send an event to VES Collector
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Post Request ${suite_dcae_vesc_url_https_session} ${evtpath} data=${evtdata} headers=${suite_headers}
+ [Arguments] ${session} ${evtpath} ${evtdata}
+ ${resp}= Post Request ${session} ${evtpath} data=${evtdata} headers=${suite_headers}
[Return] ${resp}
Publish Event To VES Collector With Put Method
[Documentation] Send an event to VES Collector
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Put Request ${suite_dcae_vesc_url_https_session} ${evtpath} data=${evtdata} headers=${suite_headers}
+ [Arguments] ${session} ${evtpath} ${evtdata}
+ ${resp}= Put Request ${session} ${evtpath} data=${evtdata} headers=${suite_headers}
[Return] ${resp}
-Publish Event To VES Collector With Put Method No Auth
- [Documentation] Send an event to VES Collector
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Put Request ${suite_dcae_vesc_url_session} ${evtpath} data=${evtdata} headers=${suite_headers}
- [Return] ${resp}
-
-Publish Event To VES Collector With Wrong Auth
- [Documentation] Send an event to VES Collector by session with wrong auth
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Post Request ${suite_dcae_vesc_url_https_wrong_auth_session} ${evtpath} data=${evtdata} headers=${suite_headers}
- [Return] ${resp}
-
-Publish Event To VES Collector With Cert
- [Documentation] Send an event to VES Collector by session with certs
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Post Request ${suite_dcae_vesc_url_https_cert_session} ${evtpath} data=${evtdata} headers=${suite_headers}
- [Return] ${resp}
-
-Publish Event To VES Collector With Wrong Cert
- [Documentation] Send an event to VES Collector by session with wrong certs
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Post Request ${suite_dcae_vesc_url_https_wrong_cert_session} ${evtpath} data=${evtdata} headers=${suite_headers}
- [Return] ${resp}
-
-Publish Event To VES Collector Without Auth And Cert
- [Documentation] Send an event to VES Collector by session without Auth and Cert
- [Arguments] ${evtpath} ${evtdata}
- ${resp}= Post Request ${suite_dcae_vesc_url_https_wo_auth_session} ${evtpath} data=${evtdata} headers=${suite_headers}
- [Return] ${resp}
+Send Request And Validate Response
+ [Documentation] Post singel event to passed url with passed data and validate received response
+ [Arguments] ${keyword} ${session} ${evtpath} ${evtjson} ${resp_code} ${msg_code}=None
+ ${evtdata}= Get Data From File ${evtjson}
+ ${resp}= Run Keyword ${keyword} ${session} ${evtpath} ${evtdata}
+ Log Receive HTTPS Status code ${resp.status_code}
+ Should Be Equal As Strings ${resp.status_code} ${resp_code}
+ ${isEmpty}= Is Json Empty ${resp}
+ Run Keyword If '${isEmpty}' == False Log ${resp.json()}
+ Run Keyword If '${msg_code}' != 'None' Check Whether Message Received ${msg_code}
+
+Check Whether Message Received
+ [Documentation] Validare if message has been received
+ [Arguments] ${msg_code}
+ ${ret}= DMaaP Message Receive ${msg_code}
+ Should Be Equal As Strings ${ret} true
+
+Send Request And Expect Error
+ [Documentation] Post singel event to passed url with passed data and expect error
+ [Arguments] ${keyword} ${session} ${evtpath} ${evtjson} ${error_type} @{error_content}
+ ${evtdata}= Get Data From File ${evtjson}
+ ${err_msg}= Run Keyword And Expect Error ${error_type} ${keyword} ${session} ${evtpath} ${evtdata}
+ :FOR ${content} IN @{error_content}
+ \ Should Contain ${err_msg} ${content}
+ Log Recieved error message ${err_msg}
+
+Run Healthcheck
+ [Documentation] Run Healthcheck
+ ${uuid}= Generate UUID
+ ${headers}= Create Dictionary Accept=*/* X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
+ ${resp}= Get Request ${http_session} /healthcheck headers=${headers}
+ Should Be Equal As Strings ${resp.status_code} 200
diff --git a/tests/dcaegen2/testcases/resources/dcae_properties.robot b/tests/dcaegen2/testcases/resources/dcae_properties.robot
index 7505fab4..de5519ee 100644
--- a/tests/dcaegen2/testcases/resources/dcae_properties.robot
+++ b/tests/dcaegen2/testcases/resources/dcae_properties.robot
@@ -4,17 +4,44 @@ Documentation store all properties that can change or are used in multipl
... make sure you prepend them with GLOBAL so that other files can easily see it is from this file.
*** Variables ***
-${GLOBAL_APPLICATION_ID} robot-dcaegen2
-${GLOBAL_DCAE_CONSUL_URL} http://135.205.228.129:8500
-${GLOBAL_DCAE_CONSUL_URL1} http://135.205.228.170:8500
-${GLOBAL_DCAE_VES_URL} http://localhost:8443/eventlistener/v5
-${GLOBAL_DCAE_USERNAME} console
-${GLOBAL_DCAE_PASSWORD} ZjJkYjllMjljMTI2M2Iz
-${VESC_HTTPS_USER} sample1
-${VESC_HTTPS_PD} sample1
-${VESC_HTTPS_WRONG_PD} sample
-${VESC_HTTPS_WRONG_USER} sample
-${VESC_ROOTCA_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/rootCA.crt
-${VESC_ROOTCA_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/rootCAdec.key
-${VESC_WRONG_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/wrong.crt
-${VESC_WRONG_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/wrong.key \ No newline at end of file
+${GLOBAL_APPLICATION_ID} robot-dcaegen2
+${GLOBAL_DCAE_CONSUL_URL} http://135.205.228.129:8500
+${GLOBAL_DCAE_CONSUL_URL1} http://135.205.228.170:8500
+${GLOBAL_DCAE_VES_URL} http://localhost:8443/eventlistener/v5
+${GLOBAL_DCAE_USERNAME} console
+${GLOBAL_DCAE_PASSWORD} ZjJkYjllMjljMTI2M2Iz
+${VESC_HTTPS_USER} sample1
+${VESC_HTTPS_PD} sample1
+${VESC_HTTPS_WRONG_PD} sample
+${VESC_HTTPS_WRONG_USER} sample
+${VESC_ROOTCA_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/rootCA.crt
+${VESC_ROOTCA_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/rootCAdec.key
+${VESC_WRONG_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/wrong.crt
+${VESC_WRONG_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/wrong.key
+${VESC_OUTDATED_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/outdated.crt
+${VESC_OUTDATED_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/outdated.key
+
+${VESC_URL_HTTPS} https://%{VESC_IP}:8443
+${VESC_URL} http://%{VESC_IP}:8080
+${VES_ANY_EVENT_PATH} /eventListener/v5
+${VES_BATCH_EVENT_PATH} /eventListener/v5/eventBatch
+${VES_THROTTLE_STATE_EVENT_PATH} /eventListener/v5/clientThrottlingState
+${VES_EVENTLISTENER_V7} /eventListener/v7
+${VES_BATCH_EVENT_ENDPOINT_V7} /eventListener/v7/eventBatch
+${VES_VALID_JSON_V7} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves7_valid.json
+${VES_INVALID_JSON_V7} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves7_invalid.json
+${VES_VALID_BATCH_JSON_V7} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves7_batch_valid.json
+${EVENT_DATA_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_single_fault_event.json
+${EVENT_MEASURE_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_vfirewall_measurement.json
+${EVENT_DATA_FILE_BAD} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_single_fault_event_bad.json
+${EVENT_BATCH_DATA_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_fault_eventlist_batch.json
+${EVENT_THROTTLING_STATE_DATA_FILE} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_volte_fault_provide_throttle_state.json
+${EVENT_PNF_REGISTRATION} %{WORKSPACE}/tests/dcaegen2/testcases/assets/json_events/ves_pnf_registration_event.json
+${DCAE_HEALTH_CHECK_BODY} %{WORKSPACE}/tests/dcae/testcases/assets/json_events/dcae_healthcheck.json
+
+#DCAE Health Check
+${CONFIG_BINDING_URL} http://localhost:8443
+${CB_HEALTHCHECK_PATH} /healthcheck
+${CB_SERVICE_COMPONENT_PATH} /service_component/
+${VES_Service_Name1} dcae-controller-ves-collector
+${VES_Service_Name2} ves-collector-not-exist \ No newline at end of file