Warning |
---|
Test update in progress for Guilin release and SO building block flow |
Gliffy Diagram | ||||
---|---|---|---|---|
|
Table of Contents |
---|
Release Notes:
In order to successfully run whole flow including SO service instantiation there is need to execute manual steps in SO Maria DB during test time being.
After test activities there is need to revert all changes.
Those changes need to be executed due to fact that in Casablanca release is no present dedicated BPMN workflow for PNF instantiation.
For testing activities there has been introduced adapted CreateVcpeResCustService_simplified bpmn workflow.
There is need to replace one /mso/async/services/CreateGenericALaCarteServiceInstance to /mso/async/services/CreateVcpeResCustService_simplified values in ORCHESTRATION_URI column in service_recipe table in catalogdb data base.
In same entry ther is need also to update service_recipe table SERVICE_MODEL_UUID to UUID of distrubuted PNF SDC Service Model.
After testing above changes need to be reverted to original state.
Link to specification:
5G - PNF Plug and Play
PNF PNP message flow diagram
Rainy day scenario - PNF is sending registration request to ONAP where required AAI entry is not present:
...
Sunny day scenario - PNF is sending registration request to ONAP where required AAI entry is prepared by SO workflow:
...
PNF PNP deployment diagram
Gliffy Diagram | ||||
---|---|---|---|---|
|
PNF PNP hardware requirements
- ONAP - standard ONAP instance located in Wind River lab
- 4 Virtual machines dedicated for PNF Simulator:
- 2 VCPU
- 8 GB of RAM
- 32 GB of HDD
PNF PNP test cases
High-Level descriptions
Link to specification:
5G - PNF Plug and Play
PNF PNP message flow diagram
Rainy day scenario - PNF is sending registration request to ONAP where required AAI entry is not present:
Gliffy Diagram | ||||
---|---|---|---|---|
|
Sunny day scenario - PNF is sending registration request to ONAP where required AAI entry is prepared by SO workflow:
Gliffy Diagram | ||||
---|---|---|---|---|
|
PNF PNP deployment diagram
Gliffy Diagram | ||||
---|---|---|---|---|
|
PNF PNP hardware requirements
- ONAP - standard ONAP instance located in Wind River lab
- 4 Virtual machines dedicated for PNF Simulator:
- 2 VCPU
- 8 GB of RAM
- 32 GB of HDD
PNF PNP test cases
High-Level descriptions
Id. | Test Case Name | Test Case Description |
---|---|---|
T01 | Create and distribute service which contains PNF based on imported VSP | Verification if in VID is present PNF enabled service. |
T02 | PNF registration accepting when AAI entry created in advance | Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present before first InventoryQuery is done by PRH. Verification if AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on pnfRegistration message contents. |
T03 | Delete pnf service and pnf resource | |
T04 | Delete pnf service instance and reasign pnf resource to another service instance | |
T05 | PNF registration rejected | Verification if PRH drops the PnfRegistration request when no AAI entry exists for the correlationID. |
T06 | PNF registration accepted when AAI entry is created using AAI API (without SO instantiation) | Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present - created using AAI API |
Detailed descriptions
Anchor | ||||
---|---|---|---|---|
|
Test Case ID | T01 | |
Test Case Name | Create and distribute service which contains PNF based on imported VSP | |
Description |
Verification if in VID is present PNF enabled service. |
Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present before first InventoryQuery is done by PRH.
Verification if AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on pnfRegistration message contents.
Verification if PNF resource registration is done properly when correct AAI entry is created after first InventoryQuery is done by PRH.
Verification if AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on pnfRegistration message contents.
Verification if PRH drops the PnfRegistration request when no AAI entry exists for the correlationID.
AAI entries shall not be created by PRH.
PNF registration accepted when AAI entry is created using AAI API (without SO instantiation)
Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present - created using AAI API
Verification if AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID.
Detailed descriptions
Test case covers following steps from message flow in 5G - PNF Plug and Play: | |||||||||||||
Release | Frankfurt/Guilin | ||||||||||||
Preconditions |
| ||||||||||||
Testing Steps | Step | Expected Result | |||||||||||
|
| ||||||||||||
Actual Results | In VID is present enabled PNF service. | ||||||||||||
Conclusion (Pass/Fail) | |||||||||||||
Testing Lab | |||||||||||||
Tester Name | Krzysztof Kuzmicki |
Anchor | ||||
---|---|---|---|---|
|
Test Case ID | T02 | ||
Test Case Name | PNF registration accepting when AAI entry created in advance | ||
Description | Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present before first InventoryQuery is done by PRH. Test case covers following steps from message flow in 5G - PNF Plug and Play: Whole test case can be also executed using postman collection PNF_service_instantiation_v2.postman_collection.json. In order to execute it successfully there is need to set two variables in collection variables:
Also whole test case including T01 is automated in robot/xtesting robot smoke image - | ||
Release | Frankfurt/Guilin | ||
Preconditions |
| ||
Testing Steps | Step | Expected Result | |
|
| ||
Actual Results | PNF registration is accepted and AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID. SO service is instantieted. | ||
Conclusion (Pass/Fail) | |||
Testing Lab | |||
Tester Name | Krzysztof Kuzmicki |
Anchor | ||||
---|---|---|---|---|
|
Test Case ID | T03 | |
Test Case Name | Delete pnf service and pnf resource | |
Description | ||
Release | Guilin | |
Preconditions | ||
Testing Steps | Step | Expected Result |
Actual Results | ||
Conclusion (Pass/Fail) | ||
Testing Lab | ||
Tester Name | Krzysztof Kuzmicki |
Anchor | ||||
---|---|---|---|---|
|
Test Case ID | T04 | |
Test Case Name | Delete pnf service instance and reassign pnf resource to another service instance | |
Description | ||
Release | Guilin | |
Preconditions | ||
Testing Steps | Step | Expected Result |
Actual Results | ||
Conclusion (Pass/Fail) | ||
Testing Lab | ||
Tester Name | Krzysztof Kuzmicki |
Test Case ID | T05 | |
Test Case Name | PNF registration rejected | |
Description | Verification if PRH drops the PnfRegistration request when no AAI entry exists for the correlationID. Test case covers following steps from message flow in 5G - PNF Plug and Play: | |
Release | Casablanca | |
Preconditions |
| |
Testing Steps | Step | Expected Result |
|
Create and distribute service which contains PNF
Verification if in VID is present PNF enabled service.
Test case covers following steps from message flow in 5G - PNF Plug and Play:
- STEP 1 RESOURCE DEFINITION
- STEP 2 SERVICE DEFINITION
- STEP 3 ARTIFACTS DISTRIBUTION
- Users with roles: Designer, Tester, Governance Rep, Ops, Admin should be available
- Login to ONAP portal as a designer user
- Navigate to SDC application
- Click on ADD + button and select Add PNF
- In HOME > Create new resource > General page fill all mandatory fields and press Create button in right top corner
- Next press Certify button. Put comment message in Certification confirmation pop-up and press OK button
- Navigate to SDC tab / HOME menu
- Click on ADD + button and select Add Service
- In HOME > Create new service > General page fill all mandatory fields (change service type from defautl a'lacarte to macro) and press Create button in right top corner
- Go to Composition in left menu
- In search box find crated PNF using its name
- Drag ad drop it to main view
- Next press Submit for Testing button, fill Message field and press OK button
- Re-login as a a tester user
- Navigate to SDC tab / HOME menu
- From main view select Service submitted for testing
- Press Start Testing button in left top corner and next Accept button.
- Put comment message in Certification confirmation pop-up and press OK button
- Re-login as a a governance user
- Navigate to SDC tab / HOME menu
- From main view select previously created Service
- Press Approve button in left top corner and put comment message in Certification confirmation pop-up and press OK button
- Re-login as a l as a ops user
- Navigate to SDC tab / HOME menu
- From main view select previously created Service
- Press Distribute button in left top corner
- Press Monitor button in left top corner and verify distribution status, use refresh button
- Re-login as a a demo user
- VID Navigate to application
- From left menu select Browse SDC Service Models
- User is logged in
- SDC application is open
- Page HOME > Create new resource > General page with fields that must be filled out is open
- Create/Update saved successfully message is present in left top corner
- PNF is sucesfully Certified
- SDC application is open
- Page HOME > Create new service > General with fields that must be filled out is open
- Create/Update saved successfully message is present in left top corner
- Composition main view is open
- PNF is visible
- PNF is added to service
- Submitted For Testing Submitted successfully for testing message is present in left top corner
- User is re-logged
- SDC application is open and newly created Service is visible in main view
- Page with Service configuration is open
- Start Testing Tested successfully message is present in left top corner
- Accept Accepted successfully message is present in left top corner
- User is re-logged
- SDC application is open and newly created Service is visible in main view
- Page with Service configuration is open
- Approve Approved successfully message is present in left top corner
- User is re-logged
- SDC application is open and newly created Service is visible in main view
- Page with Service configuration is open
- Distribute Distribute successfully message is present in left top corner
- Monitor main view is opened with information about distribution
- User is re-logged
- VID application is open
- in Browse SDC Service Models main view is present entry about newly created service
Waiting for PNFReady
Verification if PNF PnP functionality within SO is waiting for PNFReady to be published by PRH.
Test case covers following steps from message flow in 5G - PNF Plug and Play:
- STEP 16 – SERVICE INSTANTIATION
- STEP 18 – RESOURCE LEVEL FLOW STEP 20 – PNF A&AI ENTRY MISSING
- STEP 21 – SUBSCRIBE
- STEP 22 – RESOURCE LEVEL FLOW (RLF) TERMINATES
- Created PNF and Service using Test Case T01 (Create and distribute service which contains PNF)
- Robot init test case has been successfully executed at rancher node - ~/oom/kubernetes/robot/demo-k8s.sh onap init
- Changes described in Release notes applied to SO-MARIADB.
- Login to ONAP portal as a demo user
- Navigate to VID application
- Navigate to Browse SDC Service Models in left menu
- Deploy distributed SDC Service Model for PNF
- Fill all mandatory parameters. To "PNF (Correlation) ID" field put correlationId that will be setup in PNF simulator. Press "Confirm" button.
- Close " In Progress" pop-up window
- Login to so-so-bpmn-infra pod via rancher console:
kubectl exec -it dev-so-so-bpmn-infra-7584f4f887-p9tmn -n onap /bin/sh
open debug.log
vi logs/bpmn/debug.log - Verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>"
- User is logged in
- VID application is open
- Distributed SDC Service Model for PNF is present
- Create Service Instance -- Macro pop-up is present
- All fields are filled. Pop-up window " In Progress" is visible
- Window is closed. Service is still not instantiated. Is not visible in " Search for Existing Service Instances" left menu
- In debug.log should be present following message:
o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - registering for pnf ready dmaap event for correlation id: <correlationId> Command should return JSON with empty value for IPv4 and IPv6 address
{"pnf-name":"<correlationID>"","pnf-id":"testtest","in-maint":true,"resource-version":"1541720264047"}
Correct entry is present in AAI. Entry contains pnf-name equal to correlationID.
SO service is waiting for PNFReady to be published by PRH
PNF registration accepting when AAI entry created in advance
Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present before first InventoryQuery is done by PRH.
Verification if AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID.
Test case covers following steps from message flow in 5G - PNF Plug and Play:
- STEP 26 PNF SENDS PNF REGISTRATION
- STEP 26A pnfREGISTRATION EVENT ONTO DMAAP
- STEP 26B pnfREGISTRATION EVENT RETRIEVED BY PRH
- STEP 27 PRH DOES INVENTORY QUERY
- STEP 29 INVENTORY QUERY
- STEP 30 UPDATE PNF ENTRY
- STEP 31 PNF READY EVENT
- STEP 34 UPDATE PNF WORKFLOW
- STEP 43 INFORM OSS
- Created PNF and Service using Test Case T01 (Create and distribute service which contains PNF)
- Instantiated service for PNF using Test Case T02 (Waiting for PNFReady)
- Up and running PnP PNF Simualtor according to https://wiki.onap.org/display/DW/PnP+PNF+Simulator
- Verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>" - Login to virtual machine with simulator
- In config.json file :
- fill value for sourceName key - use correlationId value used during service instantiation in prerequisite no. 3
- fill pnfOamIpv4Address, pnfOamIpv6Address with some value
- Run script
./simulator.sh start-dev
in order to start simulator - Run script
./simulator.sh run simulator
in order to start sending registration request messages - Once again verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>" - Verify if SO service has reacted on PNFReady message from PRH and has ended
- Command should return JSON with empty value for IPv4 and IPv6 address
- User is logged in
- config.json file is updated accordingly
- PnP PNF simulator sends registration request
- Command should return JSON with IPv4 and IPv6 address filled accordingly with inputs from simulator's config.json
- Instantiated SO service has been ended. Verification can be done:
- VID,
Service is instantiated. It is visible in Search for Existing Service Instances menu - SO-BPMN pod in /app/logs/bpmn/debug.log should be present following message:
o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - pnf ready event got from dmaap for correlationId: <correlationId>
- VID,
PNF registration is accepted and AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID. SO service is instantieted.
PNF registration accepted when AAI entry created with delay
Verification if PNF resource registration is done properly when correct AAI entry is created after first InventoryQuery is done by PRH.
Verification if AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on pnfRegistration message contents.
Test case covers following steps from message flow in 5G - PNF Plug and Play:
- STEP 26 PNF SENDS PNF REGISTRATION
- STEP 26A pnfREGISTRATION EVENT ONTO DMAAP
- STEP 26B pnfREGISTRATION EVENT RETRIEVED BY PRH
- STEP 27 PRH DOES INVENTORY QUERY
- STEP 28 PNF SENDS PNF REGISTRATION
- STEP 29 INVENTORY QUERY
- STEP 30 UPDATE PNF ENTRY
- STEP 31 PNF READY EVENT
- STEP 34 UPDATE PNF WORKFLOW
- STEP 43 INFORM OSS
- Created PNF and Service using Test Case T01 (Create and distribute service which contains PNF)
- Up and running PnP PNF Simualtor according to https://wiki.onap.org/display/DW/PnP+PNF+Simulator
- Verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>" - Login to virtual machine with simulator
- In config.json file :
- fill value for sourceName key - use correlationId value that will be used during service instantiation in step no. 7
- fill pnfOamIpv4Address, pnfOamIpv6Address with some value
- set testDuration (amount of registration requests) to value that allows incinerate SO service during period of time when messages are send to ONAP
- set messageInterval interval with which messages are send to ONAP
- Run script
./simulator.sh run simulator
in order to start sending registration request messages - Download PRH logs and check that registration requests has been rejected.
- Instantiated service for PNF using Test Case T02 (Waiting for PNFReady) - use corelationID from step no. 3
- Once again verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>" - Verify if SO service has reacted on PNFReady message from PRH and has ended
- Command should return empty JSON
- User is logged in
- config.json file is updated accordingly
- PnP PNF simulator sends registration request
- Command should return JSON with IPv4 and IPv6 address filled accordingly with inputs from simulator's config.json
- In PRH log should appear following message:
"org.onap.dcaegen2.services.prh.exceptions.AAINotFoundException: Incorrect response code for continuation of tasks workflow" - Command should return JSON with IPv4 and IPv6 address filled accordingly with inputs from simulator's config.json
- Instantiated SO service has been ended. Verification can be done:
- VID,
Service is instantiated. It is visible in Search for Existing Service Instances menu - SO-BPMN pod in /app/logs/bpmn/debug.log should be present following message:
o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - pnf ready event got from dmaap for correlationId: <correlationId>
- VID,
PNF registration is accepted and AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID even AAI entry has been created after first InventoryQuery is done by PRH. SO service is instantieted.
PNF registration rejected
Verification if PRH drops the PnfRegistration request when no AAI entry exists for the correlationID.
AAI entries shall not be created by PRH.
Test case covers following steps from message flow in 5G - PNF Plug and Play:
- STEP 26 PNF SENDS PNF REGISTRATION
- STEP 26A pnfREGISTRATION EVENT ONTO DMAAP
- STEP 26B pnfREGISTRATION EVENT RETRIEVED BY PRH
- STEP 27 PRH DOES INVENTORY QUERY
- STEP 28 PNF SENDS PNF REGISTRATION
- STEP 29 INVENTORY QUERY
- Up and running PnP PNF Simualtor according to https://wiki.onap.org/display/DW/PnP+PNF+Simulator
- Verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>" - Login to virtual machine with simulator
- In config.json file :
- fill value for sourceName
- fill pnfOamIpv4Address, pnfOamIpv6Address with some value
- Run script
./simulator.sh run simulator
in order to start sending registration request messages - Download PRH logs and check that registration requests has been rejected.
- Once again verify AAI entry created by SO service using command:
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>"
"org.onap.dcaegen2.services.prh.exceptions.AAINotFoundException: Incorrect response code for continuation of tasks workflow"
PNF registration is rejected and AAI entries has not be created.
Parallel PNF PnP flows
Four parallel PNF PnP flows are hibernated, PNFRegistration event is received in ONAP, proper PNF PnP enabled workflow instance is re-hydrated.
Test case covers following steps from message flow in 5G - PNF Plug and Play:
- STEP 26 PNF SENDS PNF REGISTRATION
- STEP 26A pnfREGISTRATION EVENT ONTO DMAAP
- STEP 26B pnfREGISTRATION EVENT RETRIEVED BY PRH
- STEP 27 PRH DOES INVENTORY QUERY
- STEP 28 PNF SENDS PNF REGISTRATION
- STEP 29 INVENTORY QUERY
- STEP 30 UPDATE PNF ENTRY
- STEP 31 PNF READY EVENT
- STEP 34 UPDATE PNF WORKFLOW
- STEP 43 INFORM OSS
- Up and running 3 PnP PNF Simualtors according to https://wiki.onap.org/display/DW/PnP+PNF+Simulator
- Created PNF and Service using Test Case T01 (Create and distribute service which contains PNF) for 4 PNF
- Instantiated service for PNF using Test Case T02 (Waiting for PNFReady) for 4 PNF
curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>"
- fill value for sourceName key - use correlationId value used during service instantiation in prerequisite no. 3
- fill pnfOamIpv4Address, pnfOamIpv6Address with some value
./simulator.sh run simulator
in order to start sending registration request messages
|
|
|
For PNF which don't have working simulator command should return once again JSONs with empty value for IPv4 and IPv6 address
- VID,
Service is instantiated. It is visible in Search for Existing Service Instances menu - SO-BPMN pod in /app/logs/bpmn/debug.log should be present following message:
o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - pnf ready event got from dmaap for correlationId: <correlationId>
|
| |
Actual Results | PNF registration is rejected and AAI entries has not be created |
PNF registration is accepted and AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID exept PNF which don't have working simulator.
SO service are intatntieted for PNF except PNF which don't have working simulator. For this PNF service is in progress state. | ||
Conclusion (Pass/Fail) | ||
Testing Lab | ||
Tester Name | Krzysztof Kuzmicki |
Test Case ID |
T06 | ||
Test Case Name | PNF registration accepted when AAI entry is created using AAI API (without SO instantiation) | |
Description | Verification if PNF resource registration is done properly when correct AAI record (based on correlationID) is present - created using AAI API Test case covers following steps from message flow in 5G - PNF Plug and Play: |
- STEP 26 PNF SENDS PNF REGISTRATION
- STEP 26A pnfREGISTRATION EVENT ONTO DMAAP
- STEP 26B pnfREGISTRATION EVENT RETRIEVED BY PRH
- STEP 27 PRH DOES INVENTORY QUERY
- STEP 29 INVENTORY QUERY
- STEP 30 UPDATE PNF ENTRY
- STEP 31 PNF READY EVENT
Release | Casablanca | |
Preconditions |
| |
Testing Steps | Step | Expected Result |
|
| |
Actual Results | PNF registration is accepted and AAI entries: ipaddress-v4-oam and ipaddress-v6-oam are updated correctly based on correlationID | |
Conclusion (Pass/Fail) | ||
Testing Lab | ||
Tester Name | Krzysztof Kuzmicki |