Modeling/etsicatalog Jakarta Functional Test Cases
This page describes the etsicatalog functional test cases planned for the Jakarta release.
Precondition
1. Populate SDC with test data
To test catalog API, SDC should have the followed data:
Distributed NS package
Distributed Service package
Certified VNF package
2. Mock SO SOL003/SOL005 Adapter Notification callback API
To test subscription/notification API, The Mock should provide the followed mock APIs:
GET notification_callback_uri Response:204
POST notification_callback_uri Response:204
Function Test Cases
Catalog Management API
These APIs can be used to fetch VNF/PNF/NS/Service package from SDC catalog and related CRUD operation.
Test case ID | Description | Test scenario | Expected result | Status |
---|---|---|---|---|
T100 | Fetch NS package which is distributed from SDC NS package should exists in SDC catalog and is distributed. | POST /api/catalog/v1/nspackages { | Response code:202 | pass |
T101 | Search NS packages | GET /api/catalog/v1/nspackages | Response code:200 Body: NS package list | pass |
T102 | Search a NS package according to csarId | GET /api/catalog/v1/nspackages/{{csarId}} | Response code:200 Body: NS package | pass |
T103 | Delete a NS package according to csarId | Delete /api/catalog/v1/nspackages/{csarId} | Response code:204 | pass |
T104 | Fetch Service package which is distributed from SDC Service package should exists in SDC catalog and is distributed. | POST /api/catalog/v1/service_packages { | Response code:202 | pass |
T105 | Search Service packages | GET /api/catalog/v1/service_packages | Response code:200 Body: Service package list | pass |
T106 | Search a Service package according to csarId | GET /api/catalog/v1/service_packages/{{csarId}} | Response code:200 Body: Service package | pass |
T107 | Delete a Service package according to csarId | Delete /api/catalog/v1/service_packages/{csarId} | Response code:204 | pass |
T108 | Fetch VNF package from SDC | POST /api/catalog/v1/vnfpackages { | Response code:202 | pass |
T109 | Search VNF packages | GET /api/catalog/v1/vnfpackages | Response code:200 Body: VNF package list | pass |
T110 | Search a VNF package according to csarId | GET /api/catalog/v1/vnfpackages/{{csarId}} | Response code:200 Body: VNF package | pass |
T111 | Delete a VNF package according to csarId | Delete /api/catalog/v1/vnfpackages/{csarId} | Response code:204 | pass |
VNF Package Management API - SOL003
These APIs are used to manage VNF package and align with ETSI SOL003 V2.5.1.
Test case | Description | Test scenario | Expected result | Status |
---|---|---|---|---|
T200 | Create a VNF | POST /api/vnfpkgm/v1/vnf_packages { | Response code:201 | pass |
T201 | Search VNF packages | GET /api/vnfpkgm/v1/vnf_packages | Response code:200 Body: VNF package list | pass |
T202 | Search a VNF package according to vnfPkgId | GET /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}} | Response code:200 Body: VNF package | pass |
T203 | Update the content of VNF package for given vnfPkgId | PUT /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content | Response code:202 | pass |
T204 | Get the content of VNF package for given vnfPkgId | GET /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content | Response code:200 Body: content of VNF package | pass |
T205 | Get the vnfd of VNF package for given vnfPkgId | GET /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}1/vnfd | Response code:200 Body: vnfd of VNF package | pass |
T206 | Get the artifact from VNF package for given vnfPkgId & artifactPath | GET /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/artifacts/{{artifactPath}} | Response code:200 Body: artifact | pass |
T207 | Delete VNF packages according to vnfPkgId | DELETE /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}} | Response code:204 | pass |
T208 | Subscribe the notification related VNF package | POST /api/vnfpkgm/v1/subscriptions { | Response code:201 | pass |
T209 | Get the subscriptions of VNF package | GET /api/vnfpkgm/v1/subscriptions | Response code:200 Body: subscription list | pass |
T210 | Get a subscription of VNF package according to subscriptionId | GET /api/vnfpkgm/v1/subscriptions/{{subscriptionId}} | Response code:200 Body: subscription | pass |
T211 | Delete a subscription of VNF package according to subscriptionId | DELETE /api/vnfpkgm/v1/subscriptions/{{subscriptionId}} | Response code:204 | pass |
NSD Package Management API - SOL005
These APIs are used to manage PNF/NS package and align with ETSI SOL003 V2.5.1.
Test case | Description | Test scenario | Expected result | Status |
---|---|---|---|---|
T300 | Create a NS | POST /api/nsd/v1/ns_descriptors { | Response code:201 | pass |
T301 | Search NS packages | GET /api/nsd/v1/ns_descriptors | Response code:200 Body: NS package list | pass |
T302 | Search a NS package according to nsdInfoId | GET /api/nsd/v1/ns_descriptors/{{nsdInfoId}} | Response code:200 Body: NS package | pass |
T303 | Update the content of NS package for given nsdInfoId | PUT /api/nsd/v1/ns_descriptors/{{nsdInfoId}}/nsd_content | Response code:202 | pass |
T304 | Get the content of NS package for given nsdInfoId | GET /api/nsd/v1/ns_descriptors/{{nsdInfoId}}/nsd_content | Response code:200 Body: content of NS package | pass |
T305 | Delete NS packages according to nsdInfoId | DELETE /api/nsd/v1/ns_descriptors/{{nsdInfoId}} | Response code:204 | pass |
T306 | Create a PNF | POST /api/nsd/v1/pnf_descriptors { | Response code:201 | pass |
T307 | Search PNF packages | GET /api/nsd/v1/pnf_descriptors | Response code:200 Body: PNF package list | pass |
T308 | Search a PNF package according to pnfdInfoId | GET /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}} | Response code:200 Body: PNF package | pass |
T309 | Update the content of PNF package for given pnfdInfoId | PUT /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}}/pnfd_content | Response code:202 | pass |
T310 | Get the content of PNF package for given pnfdInfoId | GET /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}}/pnfd_content | Response code:200 Body: content of PNF package | pass |
T311 | Delete PNF packages according to pnfdInfoId | DELETE /api/nsd/v1/pnf_descriptors/{{pnfdInfoId}} | Response code:204 | pass |
Parser API
These APIs is used for parsing VNF/PNF/NS/Service package. The result will be formatted as JSON String.
Test case | Description | Test scenario | Expected result | Status |
---|---|---|---|---|
T400 | Parse package Package type: VNF, PNF, NS, Service | POST /api/parser/v1/parser { | Response code:202 Parser result { | pass |
T401 | Parse NS package | POST /api/parser/v1/parsernsd { | Response code:202 Parser result { | pass |
T402 | Parse VNF package | POST /api/parser/v1/parservnfd { | Response code:202 Parser result { | pass |
T403 | Parse PNF package | POST /api/parser/v1/parserpnfd { | Response code:202 Parser result { | pass |
Health Check API
The aim of these APIs is for health-check.
Test case | Description | Test scenario | Expected result | Status |
---|---|---|---|---|
T500 | Check catalog endpoint | GET /api/catalog/v1/health_check | Response code:200 | pass |
T501 | Check nsd endpoint | GET /api/nsd/v1/health_check | Response code:200 | pass |
T502 | Check parser endpoint | GET /api/parser/v1/health_check | Response code:200 | pass |
T503 | Check vnfpkgm endpoint | GET /api/vnfpkgm/v1/health_check | Response code:200 | pass |