Empower your testing with Cisco Test Automation Solution Featuring pyats & Genie

Similar documents
NXOS in the Real World Using NX-API REST

CloudCenter for Developers

Introduction to OpenConfig

DevNet Workshop-Hands-on with CloudCenter and Jenkins

Automation and Programmability using Cisco Open NXOS and DevOps Tools

Getting Started with OpenStack

Hands On Exploration of NETCONF and YANG

Cisco WAN Automation Engine (WAE) Network Programmability with Segment Routing

Get Hands On With DNA Center APIs for Managing Intent

Consuming Model-Driven Telemetry

Automation with Meraki Provisioning API

Cisco IOS XR Programmability for Cloud-Scale Networking

DEVNET Introduction to Git. Ashley Roach Principal Engineer Evangelist

Deploying Cloud-Agnostic Applications with Cisco CloudCenter

Your API Toolbelt Tools and techniques for testing, monitoring, and troubleshooting REST API requests

Migrating Applications with CloudCenter

Hands-On with IoT Standards & Protocols

DevOps CICD for VNF a NetOps Approach

Cisco Spark Messaging APIs - Integration Platforms as a Service Real World Use-Cases

Insights into your WLC with Wireless Streaming Telemetry

NetDevOps Style Configuration Management for the Network

Hybrid Cloud Automation using Cisco CloudCenter API

TRex Realistic Traffic Generator

An Introduction to Developing for Cisco Kinetic

Cisco UCS Agentless Configuration Management Ansible or Microsoft DSC

2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Coding Getting Started with Python

NSO in Brownfield: Fully Automated One-Click Reconciliation

Finesse APIs: Getting started with the REST APIs and XMPP events

Managing The Digital Network Workforce Transformation

BGP in the Enterprise for Fun and (fake) Profit: A Hands-On Lab

Managing Cisco UCS with the Python SDK

Cisco Spark Widgets Technical drill down

Git, Atom, virtualenv, oh my! Learn about dev tools to live by!

PnP Deep Dive Hands-on with APIC-EM and Prime Infrastructure

Contiv installation and integration with ACI

PSOACI Why ACI: An overview and a customer (BBVA) perspective. Technology Officer DC EMEAR Cisco

Coding Intro to APIs and REST

Zero-Touch Operations - Managing Your Network as Code

Cloud Mobility: Meraki Wireless & EMM

Privacy Requirements Scoping

Who wants to be a millionaire? A class in creating your own cryptocurrency

NetDevOps for the Network Dude How to get started with API's, Ansible and Python

WORKSHOP: from Zero to a Network Application with #golang

NetBrain Technologies: Achieving Agile Network Operations: How Automation Can Improve Visibility Across Hybrid Infrastructures

The Transformation of Media & Broadcast Video Production to a Professional Media Network

European DevNet Pros Panel

Cisco SD-Access Building the Routed Underlay

VXLAN EVPN Fabric and automation using Ansible

Tetration Hands-on Lab from Deployment to Operations Support

Creating a custom gadget using the Finesse JavaScript Library API

Kuber-what?! Learn about Kubernetes

Ipswitch: The New way of Network Monitoring and how to provide managed services to its customers

Cisco SD-Access Hands-on Lab

Spark SDK Video - Overview and Coding Demo

Cisco DNA Center and Italtel Netwrapper Evolution: Network and Applications come together

Customer s journey into the private cloud with Cisco Enterprise Cloud Suite

Internet of Things Field Network Director

Magical Chatbots with Cisco Spark and IBM Watson

Stateless Multicast with Bit Indexed Explicit Replication

Cisco VIRL. The Swiss-Army Knife of Network Simulators. Simon Knight, Software Engineer Brian Daugherty, Technical Leader.

Model-Driven Telemetry and Analytics

Cisco Spark. Questions? Use Cisco Spark to communicate with the speaker after the session. How

Upcoming Services in OpenStack Rohit Agarwalla, Technical DEVNET-1102

Contiv installation and integration with ACI. LTRCLD-2003

DNA Automation Services Offerings

Catalyst 9K High Availability Lab

Simplifying Collaboration Deployments with Prime Collaboration

Routing Underlay and NFV Automation with DNA Center

Cisco Network Programmability for the Enterprise NPEN v1.0

Introducing Cisco Network Assurance Engine

Cisco Container Platform

OpenStack and OpenDaylight, the Evolving Relationship in Cloud Networking Charles Eckel, Open Source Developer Evangelist

How to be a Network Engineer in a Programmable Age Cisco DevNet Webinar Series

Building Applications with IOx

Cisco UCS Director and ACI Advanced Deployment Lab

PSOACI Tetration Overview. Mike Herbert

Network Automation using modern tech. Egor Krivosheev 2degrees

Cisco Virtualized Infrastructure Manager

Orange: Cisco & Orange: a human touch for a digital experience

Serviceability of SD-WAN

Intuit Application Centric ACI Deployment Case Study

AlgoSec: How to Secure and Automate Your Heterogeneous Cisco Environment

LEAP DATA SHEET. Lumina Extension Adaptation Platform. Benefits: Model-driven software platform enables automation of heterogeneous networks.

APIs Assist Troubleshooting in Manufacturing

A Practical Look at DNA Center: A better way to manage your network in the digital era. Hands-On Lab

Multi-Cloud and Application Centric Modeling, Deployment and Management with Cisco CloudCenter (CliQr)

An Introduction to Monitoring Encrypted Network Traffic with "Joy"

Cisco Enterprise Agreement

Introduction to Cisco IoT Tools for Developers IoT 101

Getting Started With Containers

Is your IT Infrastructure Ready for Machine Learning & Artificial Intelligence?

Next Generation Mobile Collaboration

Technologies for the future of Network Insight and Automation

Cloud-Ready WAN For IAAS & SaaS With Cisco s Next- Gen SD-WAN

Designing and Implementing Cisco Network Programmability (NPDESI) v1.0

How to be a Network Engineer in a Programmable Age An evolution that goes beyond Infrastructure as Code and Automation

Application Hosting in IOS-XE

Real time Location Services Overview and Use cases

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Transcription:

Empower your testing with Cisco Test Automation Solution Featuring pyats & Genie Siming Yuan, Technical Leader, Engineering, Cisco Jean-Benoit Aubin, Engineer, Software Engineering, Cisco Sedy Yadollahi, Manager, Software Engineering, Cisco Ramesh Yeevani-Srinivas, Director, Engineering, Cisco

Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session in the Cisco Live Mobile App 2. Click Join the Discussion 3. Install Spark or go directly to the space 4. Enter messages/questions in the space cs.co/ciscolivebot# 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Agenda Introduction, Background Solution Overview pyats Features At-a-Glance Genie Library, SDK Installation, Getting Started Examples & Resources Roadmap, Upcoming Releases

Intuitive Test Automation For Intuitive Networks 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 5

pyats, 2014 - present Launched internally in Cisco engineering late 2014 Quickly became the most adopted test framework within Cisco Running in sanity, regression, solution labs, etc. 3000+ developers 5,000,000+ LoC 1,000,000+ runs month 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 6

Can we share this with our customers? - Dave Wapstra, Architect, Solution Integration, Cisco 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 7

DevNet: pyats developer.cisco.com/site/pyats/ 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 8

Why? Traditional Test Automation o linear and monolithic o functional based o single-purpose o favors functional, test automation specialist teams New Requirements heterogeneous and polymorphic dynamic and data-driven pluggable and extendable cross-functional teams with SMEs 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 9

2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 10

pyats Features At-a-Glance Agnostic: Multi-Vendor Support Python 3.4 + Test cases, Sections, Steps Extensible Framework Selective Execution Independent Modules Data-Driven Test Cases Tcl Library Reuse Reusable Tests, Looping Configurable Report Parametrized Test cases Asynchronous Execution Pause & PDB on [Anything] YAML-defined, Object-based Topology Pre/Post/Exception Processors Device Connection Management Device Bring-up/Clean Management 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 11

Test Script Example 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12

Genie Provides feature-centric object models Focuses development effort on writing test cases & suites Shields the end scripter from explicit CLI/YANG-RPCs Objects are agnostic Works across management interfaces: CLI, YANG, XML, etc. Handles feature differences between images, releases, platforms, etc. Genie is plug & play Use only the classes you need SDK s triggers and verifications plug directly into pyats as test cases and sections Genie is extensible Inherent & extend whenever needed Modify only what s required & accommodate for deltas between release/image/etc. genie.conf genie.ops genie.sdk 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 13

Genie: Next Level Testing 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 14

Test Ecosystem: pyats + Genie Genie Library/SDK WebDriver CLI NETCONF RESTCONF Implementation Layer TGN Devices Links Interfaces BGP MCAST OSPF Library Layer (API Interface) pyats Test Framework Test Definition Execution Engine Device Connections Tcl Integration Topology Definition Plugins & Hooks Testbed/DUT Email Notification Result Reporting Result Archive 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 15

Genie SDK Stimulus & Event Driven Pool of triggers & verification: trigger events, verify the aftermath Dynamic topology & feature discovery via system/testbed profiling Abstraction-enabled: works across a variety of platforms and Cisco IOx platforms. Agnostic, Data driven Tests Plug & Play: select test scenarios based on component and required feature coverage Dynamic: runtime generation of testcases based on input data (yaml) file, combining triggers & verifications as per demand Reusable: plugs directly into any existing pyats test script 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 16

Reusable, Scalable Test Automation 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 17

Robot Framework Integration < 200 LoC 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 18

Getting Started pyats is available in the Python Package Index (PyPI) https://pypi.python.org/pypi/pyats/ Requirements: Linux Environment (including WSL) Python 3.4.x virtual environment # create a new python virtual environment $ python3 m venv ~/pyats # install in your new environment $ source ~/pyats/bin/activate $ pip install pyats genie Examples are available under ~/pyats/examples after installation. 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 19

Day Zero Packages Genie.Abstract Genie.Metaparser Genie.WebDriver Standardizes platform-agnostic library definition and structure Dynamic function lookup with autofallback based on current tokens Promotes easy-to-maintain parser library structure Structure/schema unification among different (but similar) output contexts Selenium web page object design pattern on steroids Integrates with pyats models (testbed YAML, connection classes) Genie.Robot Unicon Parsergen Calling pyats data structures, libraries and test cases in Robot Reusing Genie libraries and SDK in Robot Universal CLI Connection class: telnet, ssh to network devices Platform independent core: new platform support via plugins Automated CLI table to data structure converter CLI parser using markup language instead of regular expressions 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 20

Upcoming Releases Genie.Telemetry YANG.Connector REST.Connector Provide a generic, plugin-based telemetry infrastructure to collect statistical and analytical data from your testbed devices NcClient adaptor to pyats connection model NETCONF configuration tools: merge, diff Request package adapter to pyats connection model 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 21

Roadmap Nov 2017 pyats available through DevNet 2017 Cisco Live! Barcelona DevNet-1480 Empower Your Test Automation With Cisco Test Automation Solution, featuring pyats & Genie 2018 Dec 2017 pyats Docker Image Release Q3 FY18 Genie SDK Released on DevNet, Integration with Robot Framework Soon Self-Serve Service Dashboard for pyats/genie test suites, featuring testbed management, reservation, monitoring, etc. 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 22

Cisco Test Automation Solution Users S 3 Dashboard Host Server Jenkins Plugin: pyats Project pyats Result Test Test Env Test Env Env LaaS LaaS 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 23

Resources DevNet: pyats - https://developer.cisco.com/site/pyats/ Framework Documentation: https://developer.cisco.com/site/pyats/docs/ Package Documentation: https://developer.cisco.com/site/pyats/docs/packages/ Community Forum: https://communities.cisco.com/community/developer/pyats GitHub Folder: https://github.com/ciscotestautomation DockerHub: https://hub.docker.com/r/ciscotestautomation/pyats/ 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24

Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session in the Cisco Live Mobile App 2. Click Join the Discussion 3. Install Spark or go directly to the space 4. Enter messages/questions in the space cs.co/ciscolivebot# 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Please complete your Online Session Evaluations after each session Complete 4 Session Evaluations & the Overall Conference Evaluation (available from Thursday) to receive your Cisco Live T-shirt All surveys can be completed via the Cisco Live Mobile App or the Communication Stations Complete Your Online Session Evaluation Don t forget: Cisco Live sessions will be available for viewing on-demand after the event at www.ciscolive.com/global/on-demand-library/. 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Continue Your Education Demos in the Cisco campus Walk-in Self-Paced Labs Tech Circle Meet the Engineer 1:1 meetings Related sessions 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 27

Thank you

Backups

Test Ecosystem pyats Genie Reusable, Scalable Test Automation Test Framework Library Framework 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 31