Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Not TestedNot TestedNot TestedNot Tested

Flow Step

Test Case Description

Status
TC1

Authenticate Connectionconnection

Verifying the connection can be established using TCP.

Status
colourGreen
title

pass

TC2

NF sends Real Time PM event and HV-VES Collector validates Eventevent

Verify that HV-VES Collector collector can receive and validate the hvMeas event—a) success—event if event header and field population agrees with GPB and b) failure event does not agree with GPB specification.

Status
colourGreen
title

pass

TC3

Publish Eventevent

Verify that direct publication is done successfully to Kafka).

Status
colourGreen
title

pass

TC4

Topic Content Validationcontent validation

Using a simple analytics program subscribe to the RTPM topic and verify amount events in topic.

Status
colourGreen
title

pass

TC5Topic Content Validation (stretched goal)

Using a simple analytics program subscribe to the RTPM topic and using PM Dictionary/e.g. PM Content Meta Data and proto file generated code decode the data and display (stretched goal)

Status
titleNot Tested

TC6

Additional Test Case for Performance

PNF High Volume Simulator sends N correct messages. DCAE Analytics application should consume N messages from DMaaP Kafka

Status
titleNot Tested

TC7

Additional Test Case for Performance

PNF High Volume Simulator sends N1 correct messages, N2 incorrect due to wrong domain, N3 correct ones. DCAE Analytics application should consume N1+N3 messages from DMaaP Kafka

Status
titleNot Tested

TC8

Additional Test Case for Performance

PNF High Volume Simulator sends N1 correct messages, N2 incorrect due to wrong wireprotocol, N3 correct ones. DCAE Analytics application should consume N1+N3 messages from DMaaP Kafka

Status
titleNot Tested

TC9

Additional Test Case for Performance

PNF High Volume Simulator sends N1 correct messages, N2 incorrect due to undecodable GPB, N3 correct ones. DCAE Analytics application should consume N1+N3 messages from DMaaP Kafka

Status
titleNot Tested

TC10

Additional Test Case for Performance

PNF High Volume Simulator sends N1 correct messages wherein one message have to big GPB payload.  DCAE Analytics application should consume less then N1 messages from DMaaP Kafka. Verify if HV-VES has disconnected from such PNF

Status
titleNot Tested

Detail test cases

TC1 : Authenticate Connection

Message validation based on domain

N1=5 correct, N2=3 incorrect due to wrong domain, N3=5 correct messages are sent to HV-VES. The collector should publish N1+N3 messages to DMaaP Kafka topic.

Status
colourGreen
titlepass

TC6

Message validation based on WTP marker byte

N1=5 correct, N2=3 incorrect due to wrong wire protocol, N3=5 correct messages are sent to HV-VES. The collector should publish N1 messages to DMaaP Kafka topic.

Status
colourGreen
titlepass

TC7

Message validation based on undecodable GPB

N1=5 correct, N2=3 incorrect due to undecodable GPB, N3=5 correct messages are sent to HV-VES. The collector should publish N1+N3 messages to DMaaPKafka topic.

Status
colourGreen
titlepass

TC8

Message validation based on payload size

N1=5 correct, N2=3 incorrect due to payload size greater than 1MB, N3=5 correct messages are sent to HV-VES. The collector should publish N1 messages to DMaaP Kafka topic.

Status
colourGreen
titlepass

TC9

Message validation based on WTP invalid format

N1=5 correct, N2=3 incorrect due to WTP invalid format, N3=5 correct messages are sent to HV-VES. The collector should publish N1+N3 messages to DMaaPKafka topic.

Status
colourGreen
titlepass

TC10Message over SSLVerify that HV-VES collector can receive message over SSL.

Status
colourGreen
titlepass

Detail test cases

Precondition: 

ONAP setup with: consul, dcaegen2, dmaap, msb.

SSL activated in HV-VES (HV-VES simulator#VESsimulator-HV-VESwithSSLenabled)

TC1 : Authenticate Connection

HV-VES XNF simulator (https://wiki.onap.org/display/DW/HV-VES+simulator) integrated to ONAP.

TC1 : Authenticate Connection

TC1 : Authenticate Connection

StatusNo run
TesterMarek Pondel
Precondition

Steps1.

Check if HV-VES component supports TLS using nmap command, e.g.:

No Format
nopaneltrue
nmap --script ssl-enum-ciphers -p6061 172.18.0.5p30222 k8s_node_ip


Expected results1.

HV-VES supports TCP and TLS connections:

No Format
nopaneltrue
root@marekpl-rtpmsim:~# nmap --script ssl-enum-ciphers -p6061 172.18.0.5

Starting Nmap 7.01 ( https://nmap.org ) at 2018-0810-3015 1112:3956 UTC
Nmap scan report for 172.18.0.5 10-183-35-200.es-si-os-ohn-30.eecloud.nsn-net.net (10.183.35.200)
Host is up (0.000026s00079s latency).
PORT      STATE SERVICE
606130222/tcp open  unknown
| ssl-enum-ciphers: 
|   TLSv1.0: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1secp256k1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1secp256k1) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
|     compressors: 
|       NULL
|     cipher preference: serverclient
|   TLSv1.1: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1secp256k1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1secp256k1) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
|     compressors: 
|       NULL
|     cipher preference: serverclient
|   TLSv1.2: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_GCMCBC_SHA256SHA (secp256r1secp256k1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_CBCGCM_SHASHA256 (secp256r1secp256k1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1secp256k1) - A
|       TLS_RSA_WITH_AES_128_GCMCBC_SHA256SHA (rsa 2048) - A
|       TLS_RSA_WITH_AES_128_CBCGCM_SHASHA256 (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
|     compressors: 
|       NULL
|     cipher preference: serverclient
|_  least strength: A
MAC Address: 02:42:AC:12:00:05 (Unknown)

Nmap done: 1 IP address (1 host up) scanned in 01.78 seconds
root@marekpl-rtpmsim:~#
2.

Gather TCP traffic during event is sent to HV-VES via XNF simulator, e.g. :

No Format
nopaneltrue
tcpdump -i br-2663c4bf9ffd -X tcp portrange 6060-6061 -w ~/ssl.cap
2.

Based on gathered cap file check if TLS connection was established during message sending to HV-VES :

Image Removed

TC2 : NF sends Real Time PM event and HV-VES Collector validates Event

08 seconds


TC2 : Collector validates event

root@marekpl-rtpmsim:~# docker logs --tail 0 -f 26c0470fef94 2018-08-30T12:20:44.098Z INFO [o.o.d.c.v.i.s.NettyTcpServer ] - Handling connection from /172.18.0.6:60070 2018-08-30T12:20:44.099Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Got message with total size of 336 B 2018-08-30T12:20:44.099Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Wire payload size: 328 B 2018-08-30T12:20:44.100Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Received end-of-transmission message 2018-08-30T12:20:44.100Z INFO [o.o.d.c.v.i.VesHvCollector ] - Completing stream because of receiving EOT message 2018-08-30T12:20:44.101Z TRACE [o.o.d.c.v.i.a.k.KafkaSink ] - Message #76 has been sent to ves_hvRanMeas:0 2018-08-30T12:20:44.101Z INFO [o.o.d.c.v.i.s.NettyTcpServer ] - Connection from /172.18.0.6:60070 has been closed

received by the collector.


root@marekpl-rtpmsim:~# cat invalidXNF.json [ { "commonEventHeader": { "version": "sample-version", "domain": "HVRANMEAS", "sequence": 1, "priority": 1, "eventId": "sample-event-id", "eventName": "sample-event-name", "eventType": "sample-event-type", "startEpochMicrosec": 120034455, "lastEpochMicrosec": 120034455, "nfNamingCode": "sample-nf-naming-code", "nfcNamingCode": "sample-nfc-naming-code", "reportingEntityId": "sample-reporting-entity-id", "reportingEntityName": "sample-reporting-entity-name", "sourceId": "sample-source-id", "sourceName": "sample-source-name" }, "messageType": "VALID", "messagesAmount": 1 }, { "commonEventHeader": { "version": "sample-version", "domain": "HVRANMEAS", "sequence": 1, "priority": 1, "eventId": "sample-event-id", "eventName": "sample-event-name", "eventType": "sample-event-type", "startEpochMicrosec": 120034455, "lastEpochMicrosec": 120034455, "nfNamingCode": "sample-nf-naming-code", "nfcNamingCode": "sample-nfc-naming-code", "reportingEntityId": "sample-reporting-entity-id", "reportingEntityName": "sample-reporting-entity-name", "sourceId": "sample-source-id", "sourceName": "sample-source-name" }, "messageType": "INVALID_GPB_DATA", "messagesAmount": 1 }, { "commonEventHeader": { "version": "sample-version", "domain": "HVRANMEAS", "sequence": 1, "priority": 1, "eventId": "sample-event-id", "eventName": "sample-event-name", "eventType": "sample-event-type", "startEpochMicrosec": 120034455, "lastEpochMicrosec": 120034455, "nfNamingCode": "sample-nf-naming-code", "nfcNamingCode": "sample-nfc-naming-code", "reportingEntityId": "sample-reporting-entity-id", "reportingEntityName": "sample-reporting-entity-name", "sourceId": "sample-source-id", "sourceName": "sample-source-name" }, "messageType": "VALID", "messagesAmount": 1 } ] root@marekpl-rtpmsim:~# ./simulator

.

sh send invalidXNF.json {"response":"Request accepted"}root@marekpl-rtpmsim:~# docker logs --tail 0 -f 26c0470fef94 2018-08-30T12:41:22.941Z INFO [o.o.d.c.v.i.s.NettyTcpServer ] - Handling connection from /172.18.0.6:60880 2018-08-30T12:41:22.941Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Got message with total size of 693 B 2018-08-30T12:41:22.941Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Wire payload size: 327 B 2018-08-30T12:41:22.942Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Wire payload size: 16 B 2018-08-30T12:41:22.943Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Wire payload size: 328 B 2018-08-30T12:41:22.943Z TRACE [o.o.d.c.v.i.a.k.KafkaSink ] - Message #86 has been sent to ves_hvRanMeas:0 2018-08-30T12:41:22.944Z TRACE [o.o.d.c.v.i.w.WireChunkDecoder ] - Received end-of-transmission message 2018-08-30T12:41:22.944Z INFO [o.o.d.c.v.i.VesHvCollector ] - Completing stream because of receiving EOT message 2018-08-30T12:41:22.944Z TRACE [o.o.d.c.v.i.a.k.KafkaSink ] - Message #87 has been sent to ves_hvRanMeas:0 2018-08-30T12:41:22.945Z INFO [o.o.d.c.v.i.s.NettyTcpServer ] - Connection from /172.18.0.6:60880 has been closed


TC2 : Collector validates event

Steps1.

TC2 : NF sends Real Time PM event and HV-VES Collector validates Event

StatusNo run
TesterMarek Pondel
PreconditionHV-VES XNF simulator (https://wiki.onap.org/display/DW/HV-VES+simulator) integrated to ONAP.
Steps1.

Send valid GPB format event to HV-VES and check logs , e.g.

No Format
nopaneltrue
root@marekpl-rtpmsim:~# cat validXNF.json
[
  {
    "commonEventHeader": {
      "version": "sample-version",
      "domain": "HVRANMEAS",
      "sequence": 1,
      "priority": 1,
      "eventId": "sample-event-id",
      "eventName": "sample-event-name",
      "eventType": "sample-event-type",
      "startEpochMicrosec": 120034455,
      "lastEpochMicrosec": 120034455,
      "nfNamingCode": "sample-nf-naming-code",
      "nfcNamingCode": "sample-nfc-naming-code",
      "reportingEntityId": "sample-reporting-entity-id",
      "reportingEntityName": "sample-reporting-entity-name",
      "sourceId": "sample-source-id",
      "sourceName": "sample-source-name"
    },
    "messageType": "FIXED_PAYLOAD",
    "messagesAmount": 1
  }
]
root@marekpl-rtpmsim:~# ./simulator.sh send ./validXNF.json
{"response":"Request accepted"}
root@marekpl-rtpmsim:~#


Expected results1.

Message is sent properly :

No Format
nopaneltrue
2.

Send invalid GPB format event VesEvent (WTP frame starting with 0xFF) to HV-VES and check logs :

No Format
nopaneltrue
2.


2.

Log is pointing that WTP frame should start with 0xAA instead of 0xFF.

Invalid message was not sent to DMaaP topic. HV-VES log points proper number of messages processed :

No Format
nopaneltrue

TC3 : Publish Event

Preconditionroot@marekpl-rtpmsim:~# docker exec -ti 0e0d1e4599b6 sh / # kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic ves_hvRanMeas

on HV_VES_PERF3GPP topic (HV-VES simulator#VESsimulator-HV-VESmessagesimulationfromshell).



/ # kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic ves_hvRanMeas ? sample-version *sample-version2sample-version:sample-version@???9H???9Rsample-nf-naming-codeZsample-nfc-naming-codebsample-reporting-entity-idjsample-reporting-entity-namersample-source-idzsample-source-named

DMaaP: HV_VES_PERF3GPP topic.

TC3 : Publish Event

StatusNo run
TesterMarek Pondel

HV-VES XNF simulator (https://wiki.onap.org/display/DW/HV-VES+simulator) integrated to ONAP.
Steps1.

Start Kafka log on ves_hvRanMeas topic :

No Format
nopaneltrue
Expected results1.

The log is enabled.

2.
Send valid event to HV-VES using XNF simulator.
2.

The message is published on DMaaP ves_hvRanMeas topic :

Code Block
languagexml

TC4 : Topic Content Validation

TC4 : Topic Content Validation

StatusNo run
TesterMarek Pondel
PreconditionHV-VES XNF simulator (https://wiki.onap.org/display/DW/HV-VES+simulator) integrated to ONAP.

Steps1.

Start Kafka log.

Expected results1.

The log is enabled.

2.
Send valid event to HV-VES and validate its content (HV-VES simulator#VESsimulator-HV-VESmessagesimulationfromshell).


2.

 Published event contains expected content.




TC5 : Message validation based on domain

TC5 : Message validation based on domain

Steps1.

Send N1=5 correct, N2=3 incorrect due to wrong domain, N3=5 correct messages to HV-VES.

Expected results1.

N1+N3 messages are published on DMaaP Kafka topic.

TC6 : Message validation based on WTP marker byte

TC6 : Message validation based on WTP marker byte

Steps1.

Send N1=5 correct, N2=3 incorrect due to wrong Wire Transfer Protocol marker byte, N3=5 correct messages to HV-VES

Steps1.

Start Kafka log.

Expected results1.

The log is enabled.

2.
Send valid events to HV-VES and validate it's content.
2.
Proper amount of events are published on Kafka topic and contain expected content.

To do

...

N1 messages are published on DMaaP Kafka topic. TCP connection is interrupted by HV-VES when such a wrong message is received.

TC7 : Message validation based on undecodable GPB

TC7 : Message validation based on undecodable GPB

Steps1.

Send N1=5 correct, N2=3 incorrect due to undecodable GPB, N3=5 correct messages are sent to HV-VES.

Expected results1.

N1+N3 messages are published on DMaaP Kafka topic.

TC8 : Message validation based on payload size

TC8 : Message validation based on payload size

Steps1.

Send N1=5 correct, N2=3 incorrect due to payload size greater than 1MB, N3=5 correct messages to HV-VES.

Expected results1.

N1 messages are published on DMaaP Kafka topic. HV-VES interrupts connection when it encounters a message with too big GPB payload

TC9 : Message validation based on WTP invalid format

TC9 : Message validation based on WTP invalid format

Steps1.

Send N1=5 correct, N2=3 incorrect due to wrong Wire Transfer Protocol invalid format, N3=5 correct messages to HV-VES.

Expected results1.

N1+N3 messages are published on DMaaP Kafka topic.

TC10 : Message over SSL

TC10 : Message over SSL

Steps1.

Send valid event to HV-VES over SSL.

Expected results1.

SSL connection to HV-VES is setup and the message is published on DMaaP topic

...

.