Put tests for NoAuth and certBasicAuth Ves in separate files 12/110612/1
authorAleksandra Maciaga <aleksandra.maciaga@nokia.com>
Mon, 27 Jul 2020 11:57:41 +0000 (13:57 +0200)
committerAleksandra Maciaga <aleksandra.maciaga@nokia.com>
Mon, 27 Jul 2020 12:00:13 +0000 (14:00 +0200)
Issue-ID: DCAEGEN2-1771
Signed-off-by: Aleksandra Maciaga <aleksandra.maciaga@nokia.com>
Change-Id: I994a575dc67a661339abc63305d4cf1a8828449a

tests/dcaegen2/testcases/01__no_auth_tests.robot [new file with mode: 0644]
tests/dcaegen2/testcases/02__cert_basic_auth_tests.robot [moved from tests/dcaegen2/testcases/dcae_ves.robot with 53% similarity]
tests/dcaegen2/testcases/__init__.robot
tests/dcaegen2/testcases/resources/dcae_keywords.robot

diff --git a/tests/dcaegen2/testcases/01__no_auth_tests.robot b/tests/dcaegen2/testcases/01__no_auth_tests.robot
new file mode 100644 (file)
index 0000000..f05c0ce
--- /dev/null
@@ -0,0 +1,107 @@
+*** Settings ***
+Resource          ./resources/dcae_keywords.robot
+*** Test Cases ***
+VES Collector HTTP Health Check
+    [Tags]    DCAE-VESC-R1  DCAE-VESC-HC
+    [Documentation]   Run healthcheck over HTTP
+    Run Healthcheck  ${http_session}
+
+Publish Single VES VNF Measurement Event API V7
+    [Tags]    DCAE-VESC-R1
+    [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 Standard Defined Fields API V7
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event with valid data with Standard Defined Fields 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_STND_DEF_FIELDS}  202  stndDefined-gNB-Nokia-PowerLost
+
+Publish Single VES VNF Measurement Event with wrong JSON
+    [Tags]    DCAE-VESC-R1
+    [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 missing mandatory parameter
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event with lack of one of the mandatory parameters "domain" 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_MISSING_MANDATORY_PARAMETER_V7}  400
+
+Publish Single VES VNF Measurement Event with empty json
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event with empty json 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_EMPTY_JSON}  400
+
+Publish Single VES VNF Measurement Event with parameter out of schema
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event with parameter which is not defined in schema and send to /eventListener/v7 endpoint. Expected 400 Response Status Code
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_EVENTLISTENER_V7}  ${VES_PARAMETER_OUT_OF_SCHEMA_V7}  400
+
+Publish Single VES VNF Measurement Event with No Auth over HTTPS
+    [Tags]    DCAE-VESC-R1
+    [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 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 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 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 Batch Events with empty json
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post empty json to /eventListener/v7/eventBatch endpoint and expect 400 Response Status Code
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_BATCH_EVENT_ENDPOINT_V7}  ${VES_EMPTY_JSON}  400
+
+Publish VES Batch Events with missing mandatory parameter
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post event list where one of the events doesn't have mandatory domain param, to /eventListener/v7/eventBatch endpoint and expect 400 Response Status Code
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_BATCH_EVENT_ENDPOINT_V7}  ${VES_BATCH_MISSING_MANDATORY_PARAM_V7}  400
+
+Publish VES Batch Events wih parameter out of schema
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post event list where one of the events have additional dummy param, to /eventListener/v7/eventBatch endpoint and expect 400 Response Status Code
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_BATCH_EVENT_ENDPOINT_V7}  ${VES_BATCH_PARAM_OUT_OF_SCHEMA_V7}  400
+
+Publish VES Event With Invalid Method
+    [Tags]    DCAE-VESC-R1
+    [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
+    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]   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
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  /listener/v5/  ${EVENT_DATA_FILE}  404
+
+Publish 'Other' Registration Event
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post an event aligned with “other” domain and expect HTTP 202 Accepeted 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
+
+Publish VES Event With Invalid Method V7
+    [Tags]    DCAE-VESC-R1
+    [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
+    Send Request And Validate Response  Publish Event To VES Collector With Put Method  ${http_session}  ${VES_EVENTLISTENER_V7}  ${EVENT_DATA_FILE}  405
+
+Publish VES Event With Invalid URL Path V7
+    [Tags]    DCAE-VESC-R1
+    [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
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  /listener/v7/  ${EVENT_DATA_FILE}  404
+
+Publish PNF Registration Event
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post PNF Registration event and expect HTTP 202 Accepeted Response Status Code
+    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_EVENTLISTENER_V7}  ${EVENT_PNF_REGISTRATION_V7}  202  registration_38407540
@@ -1,128 +1,6 @@
 *** Settings ***
-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
-
-Test Teardown     Cleanup VES Events
-Suite Setup       Run keywords  VES Collector Suite Setup DMaaP  Generate Certs  Create sessions  Create header
-Suite Teardown    Run keywords  VES Collector Suite Shutdown DMaaP  Remove Certs
-
 *** Test Cases ***
-
-#No authentication tests
-
-VES Collector HTTP Health Check
-    [Tags]    DCAE-VESC-R1  DCAE-VESC-HC
-    [Documentation]   Run healthcheck over HTTP
-    Run Healthcheck  ${http_session}
-
-Publish Single VES VNF Measurement Event API V7
-    [Tags]    DCAE-VESC-R1
-    [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 Standard Defined Fields API V7
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post single event with valid data with Standard Defined Fields 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_STND_DEF_FIELDS}  202  stndDefined-gNB-Nokia-PowerLost
-
-Publish Single VES VNF Measurement Event with wrong JSON
-    [Tags]    DCAE-VESC-R1
-    [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 missing mandatory parameter
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post single event with lack of one of the mandatory parameters "domain" 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_MISSING_MANDATORY_PARAMETER_V7}  400
-
-Publish Single VES VNF Measurement Event with empty json
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post single event with empty json 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_EMPTY_JSON}  400
-
-Publish Single VES VNF Measurement Event with parameter out of schema
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post single event with parameter which is not defined in schema and send to /eventListener/v7 endpoint. Expected 400 Response Status Code
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_EVENTLISTENER_V7}  ${VES_PARAMETER_OUT_OF_SCHEMA_V7}  400
-
-Publish Single VES VNF Measurement Event with No Auth over HTTPS
-    [Tags]    DCAE-VESC-R1
-    [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 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 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 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 Batch Events with empty json
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post empty json to /eventListener/v7/eventBatch endpoint and expect 400 Response Status Code
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_BATCH_EVENT_ENDPOINT_V7}  ${VES_EMPTY_JSON}  400
-
-Publish VES Batch Events with missing mandatory parameter
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post event list where one of the events doesn't have mandatory domain param, to /eventListener/v7/eventBatch endpoint and expect 400 Response Status Code
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_BATCH_EVENT_ENDPOINT_V7}  ${VES_BATCH_MISSING_MANDATORY_PARAM_V7}  400
-
-Publish VES Batch Events wih parameter out of schema
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post event list where one of the events have additional dummy param, to /eventListener/v7/eventBatch endpoint and expect 400 Response Status Code
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_BATCH_EVENT_ENDPOINT_V7}  ${VES_BATCH_PARAM_OUT_OF_SCHEMA_V7}  400
-
-Publish VES Event With Invalid Method
-    [Tags]    DCAE-VESC-R1
-    [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
-    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]   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
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  /listener/v5/  ${EVENT_DATA_FILE}  404
-
-Publish 'Other' Registration Event
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post an event aligned with “other” domain and expect HTTP 202 Accepeted 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
-
-Publish VES Event With Invalid Method V7
-    [Tags]    DCAE-VESC-R1
-    [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
-    Send Request And Validate Response  Publish Event To VES Collector With Put Method  ${http_session}  ${VES_EVENTLISTENER_V7}  ${EVENT_DATA_FILE}  405
-
-Publish VES Event With Invalid URL Path V7
-    [Tags]    DCAE-VESC-R1
-    [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
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  /listener/v7/  ${EVENT_DATA_FILE}  404
-
-Publish PNF Registration Event
-    [Tags]    DCAE-VESC-R1
-    [Documentation]   Post PNF Registration event and expect HTTP 202 Accepeted Response Status Code
-    Send Request And Validate Response  Publish Event To VES Collector  ${http_session}  ${VES_EVENTLISTENER_V7}  ${EVENT_PNF_REGISTRATION_V7}  202  registration_38407540
-
-# Auth by certificate and basic auth username / password
-
 Enable VESC HTTPS with certBasicAuth
     [Tags]    DCAE-VESC-R1  DCAE-VESC-HC
     [Documentation]  Enable VESC Https and Authentication and Run Health Check
@@ -132,7 +10,6 @@ Enable VESC HTTPS with certBasicAuth
 VES Collector HTTP Health Check with certBasicAuth
     [Tags]    DCAE-VESC-R1  DCAE-VESC-HC
     [Documentation]   Run healthcheck over HTTP with certBasicAuth
-    Enable VESC with certBasicAuth
     Run Healthcheck  ${http_session}
 
 Healthcheck with Outdated Cert
index e69de29..9f34cd8 100644 (file)
@@ -0,0 +1,9 @@
+*** Settings ***
+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
+Resource          ./resources/dcae_keywords.robot
+
+Test Teardown     Cleanup VES Events
+Suite Setup       Run keywords  VES Collector Suite Setup DMaaP  Generate Certs  Create sessions  Create header
+Suite Teardown    Run keywords  VES Collector Suite Shutdown DMaaP  Remove Certs
\ No newline at end of file
index 89a8786..0735ce8 100644 (file)
@@ -18,23 +18,23 @@ Create sessions
     ${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
+    Set Global 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
+    Set Global 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
+    Set Global 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
+    Set Global 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  ${https_invalid_cert_session}  dcae_vesc_url_https_wrong_cert
+    Set Global 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
+    Set Global 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  ${https_no_cert_no_auth_session}  dcae_vesc_url_https_wo_auth
+    Set Global Variable  ${https_no_cert_no_auth_session}  dcae_vesc_url_https_wo_auth
 
 Create header
     ${headers}=    Create Dictionary    Content-Type=application/json
-    Set Suite Variable    ${suite_headers}    ${headers}
+    Set Global Variable    ${suite_headers}    ${headers}
 
 Get DCAE Nodes
     [Documentation]    Get DCAE Nodes from Consul Catalog