Gliffy Diagram | ||||
---|---|---|---|---|
|
Gliffy Diagram | ||||
---|---|---|---|---|
|
Table of Contents |
---|
End to End flow to be Tested: DCAE 3GPP PM Mapper
:Gliffy Diagram | ||||
---|---|---|---|---|
|
High Level Test Cases and Status: DCAE 3GPP PM Mapper
:# | Test Cases | Status | |||||||
---|---|---|---|---|---|---|---|---|---|
1 | Verify PM Mapper is able to query config data from Receive Configuration From Config Binding Service |
| |||||||
2 | Verify PM Mapper is able subscribe to expected DR feed. | ||||||||
Status | |||||||||
colour | Green | ||||||||
title | PASS | 3 | Verify health-check Health Check returns 200 when a REST GET request is sent to / healthcheck endpoint.url |
| |||||
43 | Verify 3GPP PM Mapper Responds responds appropriately when no metadata is provided. |
| |||||||
54 | Verify 3GPP PM Mapper responds appropriately when invalid metadata is provided. |
| 6|||||||
5 | Verify | PM mapper is able to retrieve pushed PM data from Data Router.that PM Mapper logs successful when a file that contains no measdata is provided |
| ||||||
76 | Verify PM mapper can validate the data using schema (e.g. 3gpp xml format).that PM Mapper throws Event failed validation against schema error when no managed element content is provided |
| |||||||
87 | Verify PM mapper can validate the pm file that contains no measdata using schema (e.g. 3gpp xml format).that PM Mapper maps Type-C xml file and publish 3gpp perf VES events to message router |
| |||||||
98 | Verify any file validation errors are logged.3GPP PM Mapper maps Type-A file based on counter filtering and publish 3gpp perf VES events to message router |
| |||||||
109 | Verify that PM Mapper correctly identifies a file that should not be mapped based on metadata filtering. |
| |||||||
1110 | Verify PM mapper creates expected VES PM events for the mapped datathat PM Mapper correctly identifies a non-xml file. |
| |||||||
12 | Verify any mapping errors are logged. |
| |||||||
13 | Verify mapped events are publish on Message Router. |
| |||||||
14 | Verify PM Mapper send delete request for corresponding PM files to Data Router once events are published in Message Router. |
|
Test environment requirements for above test cases:
|
Test environment requirements for above test cases:
- sample data files available on DmaaP DR
- e.g. 3GPP PM files
- e.g. 3GPP PM files used in DCAE Data File Collector testing, or equivalent available in DR
- Test environment reqs:
- DMaaP R4, at minimum need DR running and configured for Bulk PM support
- DCAE 3GPP PM Mapper installed and configured for 3GPP data handling
- i.e. configured for 3GPP PM parsing and event creation
Detailed Description PM Mapper Feature Testcases
:< To - Do > - In progress
Test Case ID | PM_Mapper_01 | ||||||
---|---|---|---|---|---|---|---|
Test Case Name | Verify PM Mapper is able to query config data from Receive Configuration From Config Binding Service | ||||||
Description | PM Mapper is able to query config data from Config Binding Service once it is deployed. | ||||||
Release | Dublin | ||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||||||
Testing Steps |
| ||||||
Conclusion (Pass /Fail) | PASS - https://jenkins.onap.org/job/dcaegen2-pmmapper-master-csit-pmmapper/ | ||||||
Testing Lab | Ericsson Lab / CSIT |
Test Case ID | PM_Mapper_02 |
---|---|
Test Case Name | Verify |
Health Check returns 200 when a REST GET request to healthcheck url. | |||
Description | Verifies that when the healthcheck endpoint is called, 200 response is returned to indicate that pm-mapper micro-service is running. | ||
Release | Dublin | ||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||
Testing Steps |
|
| ||||
Conclusion (Pass /Fail) | ||||
Testing Lab | Ericsson Lab |
Test Case ID | PM_Mapper_03 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Test Case Name | Verify 3GPP PM Mapper Responds appropriately when no metadata is provided | ||||||||
Description | Verify 3GPP PM Mapper responds 400 with the message "Missing Metadata." when no metadata is provided. | ||||||||
Release | Dublin | ||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||||||||
Testing Steps |
|
PM Mapper successfully subscribes to Data Router.
/var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log:
2019-02-14T14:28:11.348Z main INFO org.onap.dcaegen2.services.pmmapper.datarouter.DataRouterSubscriber Starting subscription to DataRouter ENTRY
2019-02-14T14:28:11.348Z main INFO org.onap.dcaegen2.services.pmmapper.datarouter.DataRouterSubscriber 39d38cfa-fa5b-4b2f-a3db-fbd19c01fedf INVOKE [ SYNCHRONOUS ]
2019-02-14T14:28:11.419Z main INFO org.onap.dcaegen2.services.pmmapper.datarouter.DataRouterSubscriber Request to bus controller executed with Response Code: '201' and Response Event: 'Created'.
- Check subscriber info in Data Router.
Data Router has subscription entry in it's database.
curl -k https://172.18.0.6:8443/internal/prov
{
"feeds": [
{"suspend":false,"groupid":0,"description":"PM Mapper Feed","version":"1","authorization":{"endpoint_addrs":[],"classification":"unclassified","endpoint_ids":[{"password":"89qtolvgb6n7w5r","id":"tmp_ch389e2m9iu2bl7"}]},"last_mod":1550155491000,"deleted":false,"feedid":1,"name":"pmmapper","business_description":"","publisher":"bulkpm","links":{"subscribe":"https://dmaap-dr-prov/subscribe/1","log":"https://dmaap-dr-prov/feedlog/1","publish":"https://dmaap-dr-prov/publish/1","self":"https://dmaap-dr-prov/feed/1"},"created_date":1550155491000}
],
"groups": [
],
"subscriptions": [
{"subid":1,"suspend":false,"delivery":{"use100":false,"password":"password","user":"username","url":"3gpppmmapper"},"last_mod":1550155497000,"subscriber":"DGL","feedid":1,"groupid":0,"metadataOnly":false,"links":{"feed":"https://dmaap-dr-prov/feed/1","log":"https://dmaap-dr-prov/sublog/1","self":"https://dmaap-dr-prov/subs/1"},"created_date":1550155497000}
],
...
..
.Conclusion (Pass /Fail) | ||
Testing Lab | Ericsson Lab/CSIT |
Test Case ID | PM_Mapper_ |
---|
04 | |
---|---|
Test Case Name | Verify |
3GPP PM Mapper responds appropriately when invalid metadata is provided | |
Description | Verify 3GPP PM Mapper responds 400 with the message "Malformed Metadata." when invalid metadata is provided |
Release | Dublin | |||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | |||
Testing Steps |
|
|
|
|
|
PM_Mapper_04
Verify 3GPP PM Mapper responds 400 with the message "Missing Metadata." when no metadata is provided.
No Format |
---|
curl -X PUT <PM Mapper IP>:8081/delivery
Missing Metadata. |
/var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Conclusion (Pass /Fail) | ||
Testing Lab | Ericsson Lab/CSIT |
PM_Mapper_05
Verify 3GPP PM Mapper responds 400 with the message "Malformed Metadata." when invalid metadata is provided
Test Case ID | PM_Mapper_05 |
---|---|
Test Case Name | Verify PM mapper can validate the pm file that contains no measdata using schema (e.g. 3gpp xml format). |
Description | Verifies that a pm xml file with no measdata validates using 3GPP xml format with a 200 response and "XML validation successful" is outputted to the pm-mapper_output.log |
Release |
Dublin | ||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | |||
Testing Steps |
|
|
|
|
|
/var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PM_Mapper_06
curl -v -X PUT https://172.18.0.10:8443/publish/1/pm.xml --data-binary @
| ||
Conclusion (Pass /Fail) | ||
Testing Lab | Ericsson Lab |
Test Case ID | PM_Mapper_06 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Test Case Name | Verify that PM mapper throws Event Failed validation against schema error when no managed element content is provided.. | ||||||||
Description | Verifies that when a invalid pm xml file is validated using 3GPP xml format then "XML validation failed" is outputted to the pm-mapper_output.log | ||||||||
Release | Dublin | ||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||||||||
Testing Steps |
| ||||||||
Conclusion (Pass /Fail) | |||||||||
Testing Lab | Ericsson Lab |
Test Case ID | PM_Mapper_07 | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Test Case Name | Verify that PM Mapper maps Type-C xml file and publish 3gpp perf VES events to message router. | ||||||||||||||
Description | Verifies that PM Mapper maps Type-C xml files correctly and publishes 3gpp perf VES events to message router | ||||||||||||||
Release | Dublin | ||||||||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||||||||||||||
Testing Steps |
| ||||||||||||||
Conclusion (Pass /Fail) | PASS - https://jenkins.onap.org/job/dcaegen2-pmmapper-master-csit-pmmapper/ | ||||||||||||||
Testing Lab | Ericsson Lab / CSIT |
Test Case ID | PM_Mapper_08 | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Test Case Name | Verify 3GPP PM Mapper maps Type-A file based on counter filtering and publish 3gpp perf VES evnets to message router | ||||||||||||||
Description | Verifies that PM Mapper maps Type-A xml files correctly and publishes 3gpp perf VES events to message router | ||||||||||||||
Release | Dublin | ||||||||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service and PM Mapper subscribe to Data Router feed. | ||||||||||||||
Testing Steps |
| ||||||||||||||
Conclusion (Pass /Fail) | PASS - https://jenkins.onap.org/job/dcaegen2-pmmapper-master-csit-pmmapper/ |
Data router push the pm data to PM Mapper. PM Mapper receive the pm files.
/var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log:
2019-03-06T16:14:03.549Z -5 INFO org.onap.dcaegen2.services.pmmapper.mapping.Mapper InstanceUUID=cb96a84f-8f9a-4ba2-aeee-d5258024e977, RequestID=3764e4f0-709f-4ec7-bec9-28ab0679bf55, ServiceName=/delivery/pm.xml, InvocationID=cf73fc2d-d449-4b00-82ea-7a79e75c45db, InvokeTimestamp=2019-03-06T16:14:03.533Z, PartnerName=, ClientIPAddress=/172.18.0.10, ServerFQDN=3gpppmmapper XML validation successful Event(httpServerExchange=HttpServerExchange{ PUT /delivery/pm.xml request {Accept=[text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2], X-DMAAP-DR-PUBLISH-ID=[1551888840226.dmaap-dr-node], User-Agent=[Java/1.8.0_111], X-DMAAP-DR-META=[{ "productName": "NrRadio", "vendorName": "Ericsson", "lastEpochMicrosec": "1538478000000", "sourceName": "oteNB5309", "startEpochMicrosec": "1538478900000", "timeZoneOffset": "UTC+05.00", "location": "ftpes://192.168.0.101:22/ftp/rop/A20161224.1045-1100.bin.gz", "compression": "gzip", "fileFormatType": "org.3GPP.32.435#measCollec", "fileFormatVersion": "V9" }], X-DMAAP-DR-RECEIVED=[2019-03-06T16:14:00.225Z;from=172.18.0.1;by=172.18.0.10], Connection=[keep-alive], Authorization=[Basic dXNlcm5hbWU6cGFzc3dvcmQ=], X-ONAP-RequestID=[3764e4f0-709f-4ec7-bec9-28ab0679bf55], Content-Type=[application/octet-stream], Content-Length=[31690], X-InvocationID=[fb58765a-6946-4fc1-8cd8-87116c7a1546], Host=[3gpppmmapper:8081]} response {Connection=[keep-alive], Content-Length=[2], Date=[Wed, 06 Mar 2019 16:14:03 GMT]}},
...
..
2019-03-06T16:14:03.552Z -5 INFO org.onap.dcaegen2.services.pmmapper.mapping.Mapper InstanceUUID=cb96a84f-8f9a-4ba2-aeee-d5258024e977, RequestID=3764e4f0-709f-4ec7-bec9-28ab0679bf55, ServiceName=/delivery/pm.xml, InvocationID=cf73fc2d-d449-4b00-82ea-7a79e75c45db, InvokeTimestamp=2019-03-06T16:14:03.533Z, PartnerName=, ClientIPAddress=/172.18.0.10, ServerFQDN=3gpppmmapper Mapping event
2019-03-06T16:14:03.562Z -5 INFO org.onap.dcaegen2.services.pmmapper.mapping.Mapper InstanceUUID=cb96a84f-8f9a-4ba2-aeee-d5258024e977, RequestID=3764e4f0-709f-4ec7-bec9-28ab0679bf55, ServiceName=/delivery/pm.xml, InvocationID=cf73fc2d-d449-4b00-82ea-7a79e75c45db, InvokeTimestamp=2019-03-06T16:14:03.533Z, PartnerName=, ClientIPAddress=/172.18.0.10, ServerFQDN=3gpppmmapper Data mapped successfully
2019-03-06T16:14:03.563Z -5 INFO org.onap.dcaegen2.services.pmmapper.App InstanceUUID=cb96a84f-8f9a-4ba2-aeee-d5258024e977, RequestID=3764e4f0-709f-4ec7-bec9-28ab0679bf55, ServiceName=/delivery/pm.xml, InvocationID=cf73fc2d-d449-4b00-82ea-7a79e75c45db, InvokeTimestamp=2019-03-06T16:14:03.533Z, PartnerName=, ClientIPAddress=/172.18.0.10, ServerFQDN=3gpppmmapper Event Processed
PM_Mapper_07
- Send a request to the pm-mapper with valid pm data (meas_result.xml)
No Format |
---|
curl -v -X PUT localhost:8081/delivery/pm -H "Content-Type:application/xml" -H 'X-DMAAP-DR-META:{"productName": "NrRadio","vendorName": "Ericsson","lastEpochMicrosec": "1538478000000","sourceName": "oteNB5309","startEpochMicrosec": "1538478900000","timeZoneOffset": "UTC+05:00","location": "ftpes://192.168.0.101:22/ftp/rop/A20161224.1045-1100.bin.gz","compression": "gzip","fileFormatType": "org.3GPP.32.435#measCollec","fileFormatVersion": "V9"}' --data @tests/dcaegen2-pmmapper/pmmapper/assets/meas_result.xml -H 'X-DMAAP-DR-PUBLISH-ID: 2' -H 'X-ONAP-RequestID: 2'
HTTP/1.1 200 OK. |
/var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log:
No Format |
---|
2019-03-06T15:00:03.534Z -2 INFO org.onap.dcaegen2.services.pmmapper.mapping.Mapper InstanceUUID=d57a755d-cc56-4c1f-bbdc-1c28ff5d2f81, RequestID=2, ServiceName=/delivery/pm, InvocationID=ff4e5d3b-b5a7-403c-82b9-00693043d15b, InvokeTimestamp=2019-03-06T15:00:03.530Z, PartnerName=, ClientIPAddress=/172.18.0.1, ServerFQDN=localhost
XML validation successful
|
PM_Mapper_08
measdata
using schema (e.g. 3gpp xml format).measdata
validates using 3GPP xml format with a 200 response and "XML validation successful" is outputted to the pm-mapper_output.log- Send a request to the pm-mapper with valid pm data (no_measdata.xml)
No Format |
---|
curl -v -X PUT localhost:8081/delivery/pm -H "Content-Type:application/xml" -H 'X-DMAAP-DR-META:{"productName": "NrRadio","vendorName": "Ericsson","lastEpochMicrosec": "1538478000000","sourceName": "oteNB5309","startEpochMicrosec": "1538478900000","timeZoneOffset": "UTC+05:00","location": "ftpes://192.168.0.101:22/ftp/rop/A20161224.1045-1100.bin.gz","compression": "gzip","fileFormatType": "org.3GPP.32.435#measCollec","fileFormatVersion": "V9"}' --data @tests/dcaegen2-pmmapper/pmmapper/assets/no_measdata.xml -H 'X-DMAAP-DR-PUBLISH-ID: 2' -H 'X-ONAP-RequestID: 2'
HTTP/1.1 200 OK. |
/var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log:
No Format |
---|
2019-03-07T13:54:21.346Z -4 INFO org.onap.dcaegen2.services.pmmapper.mapping.Mapper InstanceUUID=d57a755d-cc56-4c1f-bbdc-1c28ff5d2f81, RequestID=2, ServiceName=/delivery/pm, InvocationID=afbcedd4-578a-41fb-b426-c6a5e8937e17, InvokeTimestamp=2019-03-07T13:54:21.335Z, PartnerName=, ClientIPAddress=/172.18.0.1, ServerFQDN=localhost XML validation successful
|
Testing Lab | Ericsson Lab |
Test Case ID | PM_Mapper_09 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Test Case Name | Verify any file validation errors are loggedVerify that PM Mapper correctly identifies a file that should not be mapped based on metadata filtering. | ||||||||
DescriptionVerifies that when a invalid pm xml file is validated using 3GPP xml format then "XML validation failed" is outputted to the pm-mapper_output.log | Verify that PM Mapper correctly determines whether a file should be mapped based on the metadata against the instantiated PM Mapper filter information. | ||||||||
Release | Dublin | ||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||||||||
Testing Steps |
| ||||||||
Conclusion (Pass /Fail)status | |||||||||
Testing Lab | Ericsson Lab |
Test Case ID | PM_Mapper_10 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Test Case Name | Verify that PM Mapper correctly identifies a file that should not be mapped based on metadata filteringnon-xml file. | ||||||||||
Description | Verify that PM Mapper correctly determines whether identifies a file should be mapped based on the metadata against the instantiated PM Mapper filter information.non-xml file by correctly outputting the expected message | ||||||||||
Release | Dublin | ||||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | ||||||||||
Testing Steps |
| Conclusion (Pass /Fail) | |||||||||
Status | |||||||||||
colour | Green | ||||||||||
title | PASS | ||||||||||
Testing Lab | Ericsson Lab | ||||||||||
Test Case ID | PM_Mapper_11 | ||||||||||
Test Case Name | Verify PM mapper creates expected VES PM events for the mapped data. | Description | |||||||||
Release | Dublin | ||||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | Testing Steps | |||||||||
Steps | Expected Result | Conclusion (Pass /Fail) | |||||||||
Testing Lab | Ericsson Lab | ||||||||||
Test Case ID | PM_Mapper_12 | ||||||||||
Test Case Name | Verify any mapping errors are logged. | Description | |||||||||
Release | Dublin | ||||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | Testing Steps | |||||||||
Steps | Expected Result | Conclusion (Pass /Fail) | |||||||||
Testing Lab | Ericsson Lab | ||||||||||
Test Case ID | PM_Mapper_13 | ||||||||||
Test Case Name | Verify mapped events are publish on Message Router. | Description | |||||||||
Release | Dublin | ||||||||||
Pre-conditions | From the above section "Deployment" a test environment with all the required components - Config Binding Service, Consul and PM Mapper service. | Testing Steps | |||||||||
Steps | Expected Result | Conclusion (Pass /Fail) | |||||||||
Testing Lab | Ericsson Lab |
PM_Mapper_14
Verify PM Mapper send delete request for corresponding PM files to Data Router once events are published in Message Router.
| ||||
Conclusion (Pass /Fail) | PASS - https://jenkins.onap.org/job/dcaegen2-pmmapper-master-csit-pmmapper/ | |||
Testing Lab | Ericsson Lab |
PM Mapper Component Performance Stats
Performance (Dublin recommendation 2 - cannot be committed due to Resource constraint)
- Level 0: no performance testing done
- Level 1: baseline performance criteria identified and measured (such as response time, transaction/message rate, latency, footprint, etc. to be defined on per component)
- Level 2: performance improvement plan created
- Level 3: performance improvement plan implemented for 1 release (improvement measured for equivalent functionality & equivalent hardware)
Baseline Stats:
Performance Criteria | Measurement | Comments |
---|---|---|
Time to process 700 XML ( 1.3 MB ) files | 79 minutes | This time need to be improved . PM Mapper component can process concurrent request with 1.3 MB XML size successfully. Test Bed: 1 Concurrent user. 700 XML file. Standard dublin Full ONAP installation : vCPU: 16, RAM: 60GB, Disk Size:120 GB |
Avg response time | 0.034 | 100% success. |
Performance Improvement Plan:
- Time to process 700 XML ( 1.3 MB avg ) : ~10 min
- Adapt parallelism in PM Mapper.