
OpenTAP and tools for creating and editing OpenTAP test plans, while not strictly interconnected, are synchronized by release. This blog will look at what tools are available for OpenTAP version 9.28, and the new functionality in OpenTAP version 9.29 and the tools that support it.
Test Plans
First, let's answer the question, "What is a test plan?"
The OpenTAP test automation platform, and Keysight PathWave Test Automation products built for it and with it, consume and interpret Test Plans. The OpenTAP User Guide defines a Test Plan as follows:
A test plan is a sequence of test steps and their associated data. They are stored as XML files, and use the ".TapPlan" file extension.
A peek inside an actual OpenTAP test plan reveals the following:
<?xml version="1.0" encoding="utf-8"?>
<TestPlan type="OpenTap.TestPlan">
<Steps>
<TestStep type="OpenTap.Plugins.BasicSteps.LogStep" Id="a5d8babd-6d13-4b6d-bb1c-f0da9eaf99e0">
<LogMessage>Starting IoT Test</LogMessage>
<Severity>Info</Severity>
<Name Metadata="Step Name">Log Output</Name>
<ChildTestSteps />
</TestStep>
<TestStep type="OpenTap.Plugins.BasicSteps.DialogStep" Id="fa570016-be72-4986-8290-d374f72fa143">
<Message>Starting Test - Continue?</Message>
<Title>Title</Title>
<Buttons>OkCancel</Buttons>
<PositiveAnswer>NotSet</PositiveAnswer>
<NegativeAnswer>NotSet</NegativeAnswer>
<UseTimeout>false</UseTimeout>
<Timeout>5</Timeout>
<DefaultAnswer>NotSet</DefaultAnswer>
<ShowPicture>false</ShowPicture>
<PictureSource />
<PictureDescription />
<Name Metadata="Step Name">Dialog</Name>
<ChildTestSteps />
</TestStep>
Test Steps
OpenTAP executes Test Steps in a Test Plan from top to bottom. Each Test Step can run child Test Steps, either sequentially or in parallel, and entire Test Plans can be embedded within a single Test Step. This hierarchy is recursive:
Creating and Editing Test Plans
Test Plans don't spontaneously spring into existence, and they almost always evolve over time, requiring tools to compose and maintain them.
There exist multiple options for building and modifying OpenTAP test plans:
Manual Editing
In theory, test plan developers could create and maintain OpenTAP test plans manually, in hand-coded XML, using a text editor. Many text editors and coding IDEs have features that support editing XML, with capabilities that include automatic indentation, and tag and brace matching. One small step above manual creation would involve the use of an XML-specific editor, like JSON Formatter or Oxygen.
XML-targeted editing and coding tools help with syntax, but they don't automatically let you create XML ready for consumption by OpenTAP: they lack knowledge of the lexicon of OpenTAP tags and of the larger syntax and context. However, those tools can be taught both sets of proper tags and context, to some extent.
The author still does not recommend attempting an XML-centered approach to building OpenTAP test plans. There exist far simpler and more straightforward paths:
Open Source Test Plan Editors
Community License Test Plan Editors
Editors that are part of commercial offerings from Keysight - PathWave Test Automation
Open Source Test Plan Editors
OpenTAP TUI
The OpenTAP developer community has created a 100% open source editor, OpenTAP TUI (Text-based User Interface), distributed under the MIT License. TUI can be launched from a terminal (bash on Linux and macOS, PowerShell on Windows), with character-graphic UI for creating OpenTAP test plans (.TapPlan
) and installing OpenTAP packages.
TUI also supports execution in Docker containers.

The TUI project is hosted on GitHub at https://github.com/StefanHolst/opentap-tui.
Community-Licensed Test Plan Editors
Editor X
The Editor X test plan creation tool was released in June 2023 and is available for free use under the Keysight Community License. Editor X will be maintained up through OpenTAP version 9.28, when it will be superseded by community-licensed access to comparable functionality in Keysight PathWave Test Automation, KS8400B.

Keysight PathWave Test Automation - KS8400B
Starting with OpenTAP 9.28, Keysight made its PathWave Test Automation product (KS8400B) also available under a free-to-use Community License. This license requires that users
Establish an account with Keysight
Opt-in to collection of anonymized usage telemetry, including contact, system info and test execution particulars.
After installation and registration, users have zero overhead or required actions – the system collects, encrypts and transmits this data to Keysight whenever the editor is invoked.
Commercially-Licensed Editors
Keysight KS8400B
The KS8400B Editor is included as part of Keysight's PathWave Test Automation product line.
PathWave Test Automation provides powerful, flexible and extensible test sequencing and test plan creation with additional capabilities that optimize your test software development and overall performance. Build on the PathWave software platform, PathWave Test Automation enables you to quickly create your test solutions, maximize your team’s productivity, and accelerate your products’ time-to-market.

Keysight KS8500B Test Automation Cloud
For collaboration across larger, distributed test development teams, Keysight offers the KS8500B PathWave Test Automation Cloud. This tool set lets you create, collaborate, deploy, and monitor at scale. It features cloud-based creation and sharing of test plans, test results and other resources, as well as remote access to instruments and DUTs.

Users access KS8500B functionality using familiar desktop or even mobile web browsers. Supported browsers include Microsoft Edge, Google Chrome, Mozilla Firefox and Apple Safari.

Summary
The OpenTAP project and Keysight together offer a range of tools and hosting options for developing and maintaining test plans.
The following table summarizes those options across hosts and licensing types:

Come back to visit OpenTAP.io and explore Keysight.com for updates on test plan tools and hosting.