About this Guide

User Guide Organization

The XPRESSO user guide is organized by the following key topics:

Topic Heading Topic Details
About XPRESSO Provides a high-level overview of XPRESSO, what makes XPRESSO unique, why you would want to use XPRESSO (includes Use Case scenarios) and the key reasons of why/how XPRESSO can make your test automation experience better. Sub-topics include an overview of all major features and how why/how XPRESSO reduces your testing cycle-time and simplifies your testing complexity.
Getting Started with XPRESSO Getting started information helps you get oriented with XPRESSO by providing information about:
  • Logging into XPRESSO for the first time.
  • Navigating the XPRESSO Dashboard:
    • Provides a breakdown of all major XPRESSO dashboard GUI elements including their purpose, location, lexicon definition, which Group member can access them.
    • Most table fields on the XPRESSO dashboard can be customized to suit your reading preferences and to help you quickly locate/isolate specific objects you may be looking for.
  • User Profile and Preferences:
    • Provides general User Details such as your user name, email address, API Token used, and Password.
    • User Preference allows users to change the date, time, time zone and text display settings.
  • User Types and Group Membership Roles: Defines the two major user types used in XPRESSO (System Administrator and standard XPRESSO users) and how standard users are broken into four Member sub-roles.
  • Working with Groups: Groups and Group Membership roles are the key collaboration principles within XPRESSO and implicitly defines the permission settings of each Member in a Group which in turn defines what actions they can perform and which GUI elements you can see on the XPRESSO dashboard. Sub-topics include:
    • Group Members/Membership: Provides Group-and-Group Member related information and tasks which are relevant to all Group Membership roles.
    • Group Administration: Group Administrators are responsible for the upkeep of their Groups to ensure smooth day-to-day operations, the resources needed by Group members are in a sane/usable state, and to make sure the Group preferences and Group permissions (permitted actions) are configured appropriately so they meet the operational requirements for the Group.
    • Group Permissions: Group Permissions provide the necessary background security protection for Group Members, gives the Group Administrators the ability to control which actions each Membership role can perform and which GUI elements each Membership role sees on the XPRESSO dashboard. You can view your current permissions to determine which XPRESSO actions your Membership role can perform within a Group.
    • Group Preferences: Are the pre-filled system default settings (values) that are configured by the Group Administrator to help simplify and expedite the creation of configuration forms in XPRESSO. All Member roles can view their Group Preferences in case they want to determine what the default values are.
  • Alerts and System Messages: Provides information about XPRESSO's onboard System Notifications, Messages, Actionable Requests and Webex Team Notifications.
  • Getting Help with XPRESSO: Provides point-of-contact guidelines about who to contact for help with XPRESSO and how to contact other resources to help you resolve permission restrictions with completing a task/action, with solving system-wide problems and requirements, or for XPRESSO integration issues for tools that interface with XPRESSO.
Quick Start Provides a high-level task list that focusses on the most common and frequently used tasks and features that XPRESSO was designed for — it walks you through the steps to create and execute a single Job/Job Request and how to view and search your test results. Once you understand the basic building blocks of working with the XPRESSO dashboard and creating and executing a job run, a suggested reading path is provided to gradually introduce you to the full complement of XPRESSO's features. Tasks are broken out into standard, advanced, and optional tasks.
Setting up your Test Environment You can define the following objects to describe your test framework and lab resources to support the creation of new test suites, the execution environment, platforms supported, and the integration of new features in future releases; this ensure maximum flexibility of the system:
  • Docker Images
  • Test Harnesses
  • Execution Engines
    • Jenkins Execution Engine
    • Cloud Execution Engine
  • Branches
  • Platforms
  • Oses
  • Locations
  • Webhooks
Defining your Lab Resources Lab resources typically refers to the physical and virtual/emulated equipment used for testing. You can configure the following Lab resources with XPRESSO:
  • Testbeds: Testbeds define or represent the network devices that work together as a test platform that your tests will be executed against. XPRESSO supports the following testbed types:
    • Static testbeds
    • LaaS-NG testbeds
  • Topologies: Whereas testbeds define the static resources in your test network, topologies give you the ability to describe the logical layout of the testbed devices. In turn, when a topology is orchestrated, the orchestrating engine dynamically stitches the requested devices and links using the pool of devices that it manages. Support for topologies require a backend orchestrating engine. By default, XPRESSO's orchestrator is Cisco LaaS-NG.
Job Creation, Execution & Test Results XPRESSO uses Jobs, Job Profiles, and Job Bundles to facilitate the execution, scheduling, and management of test scripts using the XPRESSO dashboard. This results in a Job Run. This topic covers the primary automation feature set in XPRESSO; creating and executing Job and the various ways to view, search, and post test results from your Job Runs. Sub-topics include:
  • Creating Jobs: Lets you prepares Job Runs in advance of execution by providing the means to associate all required elements to run the Job such as: your test environment (test harness, Execution Engine, and Location-details); your lab resources (testbeds or topologies); and any localized arguments/environment variables.
  • Creating Job Profiles: Provides an additional layer on top of the Job layer that let you perform varying degree of tests (and coverages) using the same test script but with different parameters or arguments.
  • Creating Job Bundles: Bundles are grouped combinations of saved Jobs and Profiles in the group that can be saved and re-run, (for example for regression testing) with the specific job/profile setting.
  • Executing Job Requests: Provides an overview of a Job Run, how to create the different variables of Job Requests (individual, single, and bundled), how to schedule a Job run, executing the Job run request, and the various Job run request states and actions.
  • Job Test Results: Provides information about how to view a detailed analytic report of test statistics and view summary details, how to view Job execution statistic in real-time LiveView viewer, and how to post tests results into Cisco TRADe or the Jenkins run log.
  • Searching Job Test Results: Provides information about the different ways you can search for information in your test results.
  • Comparing Job Test Results: Provides information about about comparing the test results from two different test runs with no baseline set.
  • Setting Baseline and Baseline Comparison: Provides information about how to set a baseline Job run and how to enable baseline comparison with all subsequent Job runs.
Tracking Events XPRESSO provides the following tracking features to help you monitor and manage your lab resources and to provides a single point-of-control mechanism to allow you schedule and track Job Runs and reservations:
  • Reservations: With the XPRESSO reservation system, users can manage testbed availability for the time reserved on the testbed that guarantees the testbed is available to them and eliminates the risk of double bookings & maximizes resource utilization.
  • Job Schedules: You can use Job Scheduling to automate the execution of Jobs instead of having to manually initiate (kick-off) individual Jobs every time. Job Scheduling provides a single point-of-control mechanism to allow you to create a new schedule for a Job run, monitor all pending schedules (in tandem with the Calendar), and manage all pending/in-progress/expired schedules as they are constantly being created, updated, executed, and managed by XPRESSO.
  • Calendar: The Calendar provides an at-a-glance graphical timeline to track all pending and previously configured/booked Reservations and scheduled Job Runs on a monthly basis; events are color-coded to help you distinguish between event types. You can also perform ongoing CRUD operations/functions on calendar events to fine-tune and manage your testing requirements/operations.
Integrating XPRESSO with other Tools and Services You can integrate XPRESSO with the following tools and external services to help you accelerate your lab provisioning throughout your development and testing cycles:
  • LaaS Instances and Domains
  • Lab VPN Access
  • Cisco TRADe
System Administrator Tasks Aggregates all information or tasks that are relevant and exclusive to the XPRESSO System Administrator including:
  • Pre- and post-installation (XPRESSO setup) System Admin tasks.
  • All System Management tasks accessible on the System Management page.
  • All ongoing System Admin tasks.
Working with XPRESSO APIs Provides a list of supported CLI API commands and REST API classifications in XPRESSO and the general usage rules that apply when working with APIs.
Change Log Change Logs provide a record of new or changed features and other significant functional changes since the last (development) release of XPRESSO.
Glossary Provides an alphabetical list of terms and acronym expansions that are unique (newly introduced, exclusive, or specialized), that are used in XPRESSO User Guide or appear on the XPRESSO dashboard. This glossary also identifies alternate term names and acronyms used in other Cisco networking user documentation.

Intended Audience

XPRESSO is designed to be used by Cisco and external network/DevOps/NetDevOps engineers and architects, network script developers, Telco field testers, and IT professionals working in a network testing and automation environment.

New users to XPRESSO are assigned to one of the following "layered" user types and Group roles as part of its design to segment specific tasks based on the security permissions assigned to each user role:

  • XPRESSO System Administrator (can perform all actions).

  • XPRESSO Standard Users; contains four Group sub-roles:

    1. Group Admin role
    2. Privileged Member role
    3. Group Member role
    4. Guest user (transient role assigned to new users)

NOTE 1: This User guide provides information relevant to all XPRESSO user types. When required, information is flagged when an action, procedure, or other qualifier requires advanced user permissions to complete the task.
NOTE 2: Some features and information in this User guide are reserved for Cisco internal use and is not intended for external use. When required, this information is flagged to indicate this requirement.
NOTE 3:
This user guide also contains references to a Lab IT Specialist user type who generally does not have a XPRESSO registered account but is responsible for managing the physical LaaS lab registered in XPRESSO and its resources.

Finding Information in this User Guide

There are two methods to find information you may be looking for in the XPRESSO User Guide:

  • User Guide Search Panel: This search panel is located at top of each page and supports both single and multiple word text searches; Search results are listed by the relevancy (occurrence) of your search.

  • Acrobat Search: You can download a PDF version of the XPRESSO User guide using the Download User Guide button located on the bottom right corner on each page to access more advanced search techniques.

NOTE:
This PDF has limited functionality and is provided for convenience to users who may have a requirement to see the user guide in its entire form in advance of using XPRESSO for training and searching purposes. Due to limitations when converting to PDF from the original authoring system, some functionality (such as hyperlinks) does not work but links are marked appropriately to indicate additional information is available.

Conventions used in this User Guide

The following conventions are used in this guide:

Convention Description Example
A right arrow indicates that a cascading menu (or sub-menu or pull-down menu) results from selecting a menu bar, menu or icon button. It serves the same purpose as a breadcrumb by providing a clickable trail of proceeding menus to navigate by. From the Main Navigation Bar, choose Main Menu→ENVIRONMENT→Docker Images to open the Registered Docker Images page.
* Indicates a wildcard used in search terms to represent one or more other characters. An asterisk also indicates the default option for any XPRESSO operation. Testbed n*me

Operation ***
Press the Enter [Return] Key Press ⏎
An em dash located in a table cell indicates there is no information relevant to that entry.
Italics Identifies a variable within an executable string. hostname
Key+Key Type the appropriate consecutive keystroke sequence. CNTL-C
Key name Press a keyboard key Delete
Icon button name Click on the identified Icon button to perform an action. Click the Notifications icon button.
Floating action button name Click on the identified floating action button to perform an action. Click the Add floating action button.

Reader Alert Conventions

This user guide uses the following reader alerts to highlight notable, special, and safety information:

NOTE:
Notes provides information that is, or may be, of special interest or significance to users.

IMPORTANT:
Important information provide a higher classification of notable information that should be acknowledged by users.

EXAMPLE:
Examples show specific XPRESSO applications of an activity, action, procedure, or task. Examples may also be shown in code blocks were appropriate.

TIP:
Tips provide information that may help you solve a problem or help you expedite an activity, action, procedure, or task.

CAUTION!
Cautions indicate the described activity or situation may, or will, cause service interruption or may be a security risk.

WARNING!
Warnings indicate the described activity or situation may, or will, cause equipment damage, serious performance problems, or other serious consequences.

User Guide Feedback

If you have questions, comments, or suggestions about the XPRESSO user guide, please email the xpresso-support@cisco.com mailer directly.

XPRESSO is designed and maintained by the Core Software Group (CSG) DevX team @ Cisco Systems, Inc.

© 2020 Cisco Systems, Inc. All rights reserved.

Other products and company names mentioned herein may be trademarks or trade names of their respective owners.

The information presented in this user guide is subject to change without notice. No responsibility is assumed for inaccuracies contained herein.