Post on 16-Oct-2021
OpenTAP: Plugin Development Training
Lars Nielsen, Keysight Technologies5G-VINNI WP4, 11/03/20
This project has received funding from the EU’s Horizon 2020 research and innovation programme under grant agreement No 815279.
Agenda• Use case
– Network measurement– Iperf tool
• OpenTAP plugin development– Development resources– Tools and prerequisites
03/03/2020 OpenTAP: Introduction to test composition and automation 2
USE CASEOpenTAP Plugin Development
03/03/2020 OpenTAP: Introduction to test composition and automation 3
Use Case - Iperf Tool• Use case: measure connection performance between
two entities– Example from Introduction to OpenTAP: Ambulance and hospital– Previously showed how it could be done using Hawkeye
• Using the tool Iperf– Measure connection performance between Iperf server and client– Measurements configured and initiated from client– Controlled via command line
• Control remotely using Ssh– Control multiple clients– Automate measurements
03/03/2020 OpenTAP: Introduction to test composition and automation 4
Network to test
Hospital
Ambulance5G
Iperf ServerIperf Client
Cmdvia Ssh
Test traffic
Test scripts
Use Case - Iperf Tool - OpenTAP• Control Iperf via OpenTAP• Iperf OpenTAP plugin
– Control the iperf client “instrument”– Provide test steps to run tests– Easy reusability
03/03/2020 OpenTAP: Introduction to test composition and automation 5
Network to test
Hospital
Ambulance5G
Iperf ServerIperf Client
Cmdvia Ssh
Test traffic
IperfPlugin
OpenTAPEngine
OpenTAPplan
Result Listeners
User Interfaces
Instrument Plugins
DUT Plugins
Test Step Plugins
The OpenTAP architectureDEPENDENCY
PathWave
Automation Engine
DB Storage
CLI
DesktopEditor
Text Log
RabbitMQ
VNF DUT
Custom DUT
Custom Step
ConfigureTool
Custom Inst Custom RL
Custom UI
TUIWeb
Editor
Hawkeye Yardstick
IxLoad
Traffic load step
REST API
OpenTAP Plugin – Development process
• Prototype – Ssh Plugin– Single test step setting up connection and performing command
• Ongoing development – Ssh Plugin– A step to handle the connection– A step to execute a command
• Optimized plugin – Ssh Plugin– An instrument to manage the connection– A step to execute a command
• Packaged for user / customer – Iperf PLugin– Iperf instrument inherit from Ssh instrument– Iperf run measurement step
03/03/2020 OpenTAP: Introduction to test composition and automation 7
Network to test
Hospital
Ambulance5G
Iperf ServerIperf Client
Cmdvia SSH
Test traffic
IperfPlugin
OpenTAPEngine
OpenTAPplan
OPENTAP PLUGIN DEVELOPMENTOpenTAP Plugin Development
03/03/2020 OpenTAP: Introduction to test composition and automation 8
OpenTAP Development Resources
• Project page– https://www.opentap.io/
• Getting started and Developers guide– https://doc.opentap.io/#what-is-opentap
• Gitlab– https://gitlab.com/OpenTAP/opentap
03/03/2020 OpenTAP: Introduction to test composition and automation 9
Prerequisites for Development
• Visual Studio– C# .NET Standard
• OpenTAP– The sequencing engine running the plugin and execute test steps
• Developer’s System CE (Bundle)– Editor CE – To compose test plans using the developed plugins– SDK – Containing code examples – Visual Studio SDK CE – Containing templates and integrates with Visual Studio
• Iperf server and client– Iperf documentation: https://iperf.fr/– IP and user information– Ssh key to Iperf client
• Renci SshNet– Ssh client library (Nugent package)
03/03/2020 OpenTAP: Introduction to test composition and automation 10
DEMOOpenTAP Plugin Development
03/03/2020 OpenTAP: Introduction to test composition and automation 11
Thank you for your attention
Q&A
This project has received funding from the EU’s Horizon 2020 research and innovation programme under grant agreement No 815279.
Resources:OpenTAP: https://www.opentap.io/OpenTAP on Gitlab: https://gitlab.com/OpenTAP/opentap5G-VINNI: https://www.5g-vinni.eu/