XOA

Xena OpenAutomation

What is XOA?

Xena OpenAutomation (XOA) is an open-source test automation framework for use with all Xena solutions.

Fast, easy to use and extremely flexible, XOA features a Python API that runs on any OS. You can use XOA in whichever way suits your test needs.

There are three main options:

1. Use XOA CLI or XOA Python API to add Xena test equipment to your existing test automation setup.

2. Use XOA CLI or XOA Python API to add Xena testers and run Xena test suites via your existing test automation setup.

3. Use XOA to automate all your Ethernet testing.

XOA CLI

The XOA CLI provides an intuitive set of text-based commands that lets you control and integrate Xena’s Ethernet TGA and network emulation solutions for easy test automation.

XenaManager conveniently stores test port configurations (.xpc file) in the XOA CLI format, facilitating smooth transitions between a XenaManager environment and a XOA CLI environment. This compatibility ensures seamless interchangeability and user-friendly experience.

To establish a TCP/IP connection and send CLI commands as lines of text, any client platform can be utilized. Popular client platforms include Tcl, Perl, Python, BASH, Ruby, and Java. Multiple concurrent scripting sessions are supported by all Xena chassis, allowing different users to collaborate on the same Xena chassis simultaneously.

XOA CLI Example Library:

XOA Python API

The XOA Python API is a complete and open-source solution that enables users to communicate with Xena’s Ethernet TGA and impairment test equipment in a user-friendly manner.

Key Features

  • Seamless integration with XOA CLI and XenaManager: XOA Python API works in harmony with XOA CLI and XenaManager to provide a comprehensive and flexible testing solution.
  • Objected-oriented, high-level abstraction: XOA Python API leverages an object-oriented approach, providing a higher level of abstraction that accelerates the development of automation scripts.
  • IDE auto-complete, built-in manual: XOA Python API includes features such as IDE auto-complete and a built-in manual for classes, functions, and APIs, which significantly enhance development efficiency.
  • Command grouping and response auto matching: This feature optimizes test execution efficiency by allowing for command grouping and automatic matching of responses.
  • Server-to-client push notification subscription: XOA Python API supports server-to-client push notification subscriptions, reducing the complexity of user code.
  • Support Python 3.8 and higher: XOA Python API is compatible with Python 3.8 and higher versions, ensuring compatibility with modern Python environments.
XOA has a Python API

XOA Python Test Suite

The XOA Python Test Suite, which include XOA Core and test suite plugins, is a comprehensive Python framework designed to offer developers and test specialists well-defined APIs. These APIs enable seamless execution and integration of Xena’s test suites, while also facilitating efficient management of Xena’s Ethernet TGA and impairment test equipment. With XOA Python Test Suites, developers and test specialists can easily harness the power of Xena’s test suites and effectively handle the configuration and control of the testing equipment.

Currently, XOA Python Test Suite includes:

  • RFC2544
  • RFC2889
  • RFC3918

Future test suites will also be included under the XOA framework.

Xena Test Suite Desktop Applications

Xena Test Suite Desktop Applications (for Windows) include automated test suites to conduct RFC 2544, Y.1564, RFC 2889 and RFC 3918 testing.

Xena2544 provides comprehensive support for all four test types specified in RFC2544. It also offers the flexibility to selectively enable one or more test types based on your requirements. Xena2544 accommodates various network topologies and supports traffic flow in both Layer 2 and Layer 3, catering to both IPv4 and IPv6 protocols.

Learn More

Xena2889 is designed for performance benchmarking of Layer 2 LAN switches, aligning with the guidelines outlined in RFC 2889. It offers a comprehensive test suite, excluding the “Dribble Bit Errors” and “Alignment Errors” tests specified in the RFC. Xena2889 provides a valuable tool for assessing and measuring the performance of Layer 2 LAN switches in a convenient and efficient manner.

Learn More

Xena3918 serves as a valuable tool for conducting RFC3918 IP Multicast Benchmarking testing with one or multiple Xena test chassis. With Xena3918, users gain access to an intuitive port configuration panel that simplifies the process of adding or removing ports, as well as assigning IP addresses and port roles.

Learn More

Xena1564 is a feature-rich application that offers comprehensive support for both the configuration and performance test types defined in Y.1564 for Ethernet Service Validation. The intuitive graphical user interface provided by Xena1564 simplifies the process of connecting one or more Xena chassis for conducting Layer 2 and Layer 3 tests. This user-friendly interface enhances the testing experience, allowing for efficient and accurate configuration and performance assessment.

Learn More

XOA ANLT Utility

The XOA ANLT Utility offers an interactive shell that enables users to manage Z800 Freya test modules through a command-line interface. This makes it easy to do Auto-Negotiation (AN) and Link Training (LT) testing, while also providing valuable visibility into AN/LT protocols.

XOA Converter

Want to quickly migrate existing Xena test suite configurations into XOA? Try the XOA Converter tool.

Previously, Xena’s test suite applications were solely compatible with MS Windows. However, going forward, all existing and future test suites will be incorporated into the XOA Python Test Suite, eliminating this limitation.

To simplify the transition, the XOA Converter lets you seamlessly migrate your existing Xena test suite configurations (Xena2544, Xena2889, and Xena3918) from the Xena window desktop application into XOA Python Test Suites. With the XOA Converter, the migration process becomes effortless and hassle-free.

Source Code

GitHub is our preferred platform for hosting the XOA source code due to its outstanding capabilities in version control and collaboration. It provides an excellent environment for managing code changes, ensuring that the project’s history is well-documented and accessible. We embrace openness and encourage everyone to use, share, contribute, and provide feedback on our source code. GitHub allows for seamless collaboration and fosters a community-driven approach where individuals can actively participate in the development and improvement of XOA. We value the input and contributions from the community, as it enhances the overall quality and innovation of the source code.

XOA Documentation

To help you get going with XOA, we provide comprehensive documentation explaining how it works and what you should do next.

Use XOA for AN/LT Testing

Watch this video to see how XOA is used for testing Auto-Negotiation & Link Training (AN/LT) using the Xena Z800 Freya traffic generators.

5 min 38 secs

Using XOA vs XenaManager

Xena’s network emulator – Chimera – is used to simulate real-world traffic by adding different types of impairment. This video shows how we add 20 microseconds latency to Ethernet traffic between 2 devices using XenaManager.

We then repeat the same test using Xena OpenAutomation (XOA).

5 min. 24 secs