5G Bulk PM Usecase Testing @ Ericsson Lab - Casablanca




Horizon Portal access will be required to find the IP addresses of K8 hosts.

Hardware requirements:

  • ONAP - standard OOM ONAP instance located in Ericsson Lab
    • 3* 16 vCPU
    • 3* 60GB of RAM
    • 3* 60GB of HDD
  •  Rancher
    • 2 vCPUs
    • 4GB RAM
    • 20GB Disk
  • Simulators (each)
    • 2 vCPU
    • 4GB RAM
    • 20GB Disk

NB. all the selected instances are the ones that were used.


Error rendering macro 'multimedia' : com.atlassian.renderer.v2.macro.MacroException: Cannot find attachment 'Bulkpm.mp4'


Versions of ONAP packages that were on the Server @ 16 Oct 2018 ONAP_VERSION.txt

Detailed Description End-to-End Feature Integration Testcases ( Manual ) on Ericsson Lab :

Test Case ID

Bulk_PM_E2E_01

Test Case NameSend FileReadyEvent to VES Collector
DescriptionEnsure that the 'FileReady' VES event is sent from the simulated xNF to the VES collector.
ReleaseCasablanca
Pre-conditionsFrom the above section "Deployment" a test environment with all the required components - xNF (simulated with sftp or sftpe ), VES Collector are all started.
Testing Steps
StepsExpected Result
  1. Send FileExist VES event from PNF Simulator to VES collector.

    Example File Ready VES Notification:

    curl -i -X POST    -H "Content-Type:application/json"    -d '{    "event": {
            "commonEventHeader": {
                "version": "4.0.1",
                "vesEventListenerVersion": "7.0.1",
                "domain": "notification",
                "eventName": "Noti_RnNode-Ericsson_FileReady",
                "eventId": "FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1",
                "lastEpochMicrosec": 8745745764578,
                "priority": "Normal",
                "reportingEntityName": "otenb5309",
                "sequence": 0,
                "sourceName": "oteNB5309",
                "startEpochMicrosec": 8745745764578,
                "timeZoneOffset": "UTC+05.30"
            },
            "notificationFields": {
                "changeIdentifier": "PM_MEAS_FILES",
                "changeType": "FileReady",
                "notificationFieldsVersion": "2.0",
                "arrayOfNamedHashMap": [
                  { "name": "pm.xml.gz",
                    "hashMap":{
                                  "location": "sftp://admin:admin@172.18.0.2:22/pm.xml.gz",
                                  "compression": "gzip",
                                  "fileFormatType": "org.3GPP.32.435#measCollec",
                                  "fileFormatVersion": "V10"
                                  }
                  }
                ]  
            }
        }
      }' 'http://172.17.0.2:8080/eventListener/v7'

The VES Collector accepted the "File Ready" Notification send by xNF.

We should get 202 response from the VES Collector. e.g.

HTTP/1.1 202

Content-Type: application/json

Content-Length: 8

Date: Sat, 22 Sep 2018 21:16:07 GMT



Conclusion (Pass /Fail)Pass
Testing Lab

Ericsson



Test Case IDBulk_PM_E2E_02
Test Case Name

DmaaP topic for unauthenticated.VES_NOTIFICATION_OUTPUT

DescriptionEnsure that the unauthenticated.VES_NOTIFICATION_OUTPUT topic is present on the DMaaP Message Router once it receives "File Ready" VES notification from VES Collector.
ReleaseCasablanca
Pre-conditions

1 .The DmaaP Message Router is up and running.

2. The Previous Test case has passed and its environment is still running

Testing Steps



StepsExpected Result
  1. Check on the DmaaP topic, it should contain "unauthenticated.VES_NOTIFICATION_OUTPUT"
    curl -i http://172.18.0.6:3904/topics

Expect result code 200, e.g.

HTTP/1.1 200 OK
Date: Sun, 23 Sep 2018 10:10:26 GMT
Content-Type: application/json
Accept: */*
breadcrumbId: ID-de84f90a4556-45507-1537643129080-0-21587
User-Agent: curl/7.47.0
X-CSI-Internal-WriteableRequest: true
Content-Length: 87
Server: Jetty(9.3.z-SNAPSHOT)

{"topics": [
    "__consumer_offsets",
    "unauthenticated.VES_NOTIFICATION_OUTPUT"
]}

If you wish to manually check the messages under unauthenticated.VES_NOTIFICATION_OUTPUT topic in DmaaP.

# curl http://172.18.0.6:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12

Note: If you manually check the message on the Topic, you will consume it and therefore DFC wont be able to consume it.

["{\"event\":{\"commonEventHeader\":{\"startEpochMicrosec\":8745745764578,\"eventId\":\"FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1\",\"timeZoneOffset\":\"UTC+05.30\",\"internalHeaderFields\":{\"collectorTimeStamp\":\"Sat, 09 22 2018 07:09:15 UTC\"},\"priority\":\"Normal\",\"version\":\"4.0.1\",\"reportingEntityName\":\"otenb5309\",\"sequence\":0,\"domain\":\"notification\",\"lastEpochMicrosec\":8745745764578,\"eventName\":\"Noti_RnNode-Ericsson_FileReady\",\"vesEventListenerVersion\":\"7.0.1\",\"sourceName\":\"oteNB5309\"},\"notificationFields\":{\"notificationFieldsVersion\":\"2.0\",\"changeType\":\"FileReady\",\"changeIdentifier\":\"PM_MEAS_FILES\",\"arrayOfNamedHashMap\":[{\"name\":\"pm.xml.gz\",\"hashMap\":{\"location\":\"sftp://admin:admin@172.18.0.2:22/pm.xml.gz\",\"fileFormatType\":\"org.3GPP.32.435#measCollec\",\"fileFormatVersion\":\"V10\",\"compression\":\"gzip\"}}]}}}"]

Conclusion (Pass /Fail)Pass
Testing LabEricsson



Test Case IDBulk_PM_E2E_03
Test Case NameDownload of xml PM file(s) from xNF when 'FileReady' VES event is received.
DescriptionEnsure that the Data File Collector starts to download the xml PM file(s) from the simulated xNF once it receives the 'FileReady' VES event via the VES collector.
ReleaseCasablanca
Pre-conditionsThe Previous Test case has passed and its environment is still running
Testing Steps
StepsExpected Result
  1. File Collector get xNF info ( sftp address, PM file location etc ) from the
     Dmaap topic
     unauthenticated.VES_NOTIFICATION_OUTPUT

    # docker exec -it dfc /bin/sh

    > cat /opt/log/application.log


Data File Collector fetches messages from Dmaap Topic.

2018-09-22 21:16:07.815  INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient       : Request: GET http://172.18.0.6:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12
2018-09-22 21:16:07.815  INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient       : Content-Type=application/json
2018-09-22 21:16:07.816  INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient       : HTTP request headers: {Content-Type=[application/json]}
2018-09-22 21:16:08.062  INFO 1 --- [reactor-http-client-epoll-15] o.o.d.c.d.s.DmaapReactiveWebClient       : Response Status 200
2018-09-22 21:16:08.064  INFO 1 --- [reactor-http-client-epoll-15] o.o.d.c.d.s.DmaapConsumerJsonParser      : raw message from message router: ["{"event":{"commonEventHeader":{"startEpochMicrosec":8745745764578,"eventId":"FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1","timeZoneOffset":"UTC+05.30","internalHeaderFields":{"collectorTimeStamp":"Sat, 09 22 2018 09:16:07 UTC"},"priority":"Normal","version":"4.0.1","reportingEntityName":"otenb5309","sequence":0,"domain":"notification","lastEpochMicrosec":8745745764578,"eventName":"Noti_RnNode-Ericsson_FileReady","vesEventListenerVersion":"7.0.1","sourceName":"oteNB5309"},"notificationFields":{"notificationFieldsVersion":"2.0","changeType":"FileReady","changeIdentifier":"PM_MEAS_FILES","arrayOfNamedHashMap":[{"name":"pm.xml.gz","hashMap":{"location":"sftp://admin:admin@172.18.0.2:22/pm.xml.gz","fileFormatType":"org.3GPP.32.435#measCollec","fileFormatVersion":"V10","compression":"gzip"}}]}}}"]

2. File Collector start downloading PM files from xNF.

> cat /opt/log/application.log

2018-09-22 21:16:08.811 DEBUG 1 --- [reactor-http-client-epoll-15] o.o.d.c.datafile.ftp.SftpClient          : File pm.xml.gz Download Successfull from xNF

3. File Collector store downloaded files to /target directory inside container.

# docker exec dfc /bin/sh -c "ls /target | grep .gz"

The pm file is listed in the directory on the DFC docker container.

pm.xml.gz

Conclusion (Pass /Fail)Pass
Testing LabEricsson



Test Case IDBulk_PM_E2E_04
Test Case NameFile Collector informs Data Router of xml PM file(s)
DescriptionEnsure that the PM xml file(s) are published to the Data Router.
ReleaseCasablanca
Pre-conditionsThe Previous Test case has passed and its environment is still running
Testing Steps
StepsExpected Result

1 .The File Collector subscribes to the Data Router.

# curl -v -X POST -H "Content-Type:application/vnd.att-dr.feed" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @$WORKSPACE/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443

Where @$WORKSPACE/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json is e.g.

{
"name": "DefaultFeed",
"version": "m1.0",
"description": "Default feed",
"business_description": "Default Feed",
"suspend": false,
"deleted": false,
"changeowner": true,
"authorization": {
"classification": "unclassified",
"endpoint_addrs": [],
"endpoint_ids": [
{
"password": "dradmin",
"id": "dradmin"
}]
}
}

1.The File Collector is successfully subscribed to the Data Router.

# curl -k https://${DR_PROV_IP}:8443/internal/prov

Should contain https://dmaap-dr-prov/publish/1

2. File Collector informs Data Router of new xml PM files(s)

# curl -v -X POST -H "Content-Type:application/vnd.att-dr.subscription" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @/tmp/addSubscriber.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443/subscribe/1

Where e.g. /tmp/addSubsriber.json is

{

"delivery":{
"url":"http://192.168.16.9:7070",
"user":"LOGIN",
"password":"PASSWORD",
"use100":true
},
"follow_redirect":false,
"metadataOnly":false,
"suspend":false,
"groupid":0,
"links":{
"self": "https://dmaap-dr-prov/subscribe/1",
"log": "https://dmaap-dr-prov/feedlog/1",
"feed": "https://dmaap-dr-prov/feed/1"
},
"subscriber":"admin"

2. The xml PM file(s) is published on the Data Router.

# curl -k https://${DR_PROV_IP}:8443/internal/prov

Should contain http://X.X.X.X:7070

Where X.X.X.X is the IP-address of the Data Router File Subscriber Simulator.

Conclusion (Pass /Fail)Pass
Testing LabEricsson
Test Case IDBulk_PM_E2E_05
Test Case NameSimulated File Consumer receives the xml PM file(s)
DescriptionEnsure that a simulated File Consumer is able to subscribe and consume the PM file(s) from the Data Router.
ReleaseCasablanca
Pre-conditionsThe Previous Test case has passed and its environment is still running
Testing Steps
StepsExpected Result
  1. A simulated File Consumer subscribes to the Data Router e.g. where the IP-
    address is of the datarouter-prov docker container
    # curl -k https://172.100.0.3:8443/internal/prov
1.The simulated File Consumer is successfully subscribed to the Data Router.

2. A simulated File consumer receives notification of a xml PM file(s)

# docker exec -it subscriber-node bash

> ls -la opt/app/subscriber/delivery/

2.The simulated File Consumer is successfully able to consume the xml PM file(s) from the Data Router.

The pm file is visible on the simulated File Consumer.

pm.xml.gz

Conclusion (Pass /Fail)Pass
Testing LabEricsson