Skip to content

genie.libs contains libraries for configuring, retrieving and testing topologies

License

Notifications You must be signed in to change notification settings

CiscoTestAutomation/genielibs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

published

Genie libs

This library package contains the open source implementations for:

  • Genie Ops: objects modelling the operational state of devices
  • Genie Conf: objects modelling the configuration of devices
  • Genie Robot: robot library layer, enabling Genie libs to be used in Robot Framework
  • Genie SDK: triggers and verifications (reusable testcases) implemented using Genie infrastructure.

About

Genie is both a library framework and a test harness that facilitates rapid development, encourages reuse, and simplies writing test automation. Genie bundled with the modular architecture of pyATS framework accelerates and simplifies test automation leveraging all the perks of the Python programming language in an object-orienting fashion.

pyATS is an end-to-end testing ecosystem, specializing in data-driven and reusable testing, and engineered to be suitable for Agile, rapid development iterations. Extensible by design, pyATS enables developers to start with small, simple and linear test cases, and scale towards large, complex and asynchronous test suites.

Genie was initially developed internally in Cisco, and is now available to the general public starting early 2018 through Cisco DevNet.

Installation

This package is automatically installed when Genie gets installed.

bash$ pip install genie

Detailed installation guide can be found on our website.

Development

To develop this package, assuming you have Genie already installed in your environment, follow the commands below:

# clone this repo
bash$ git clone https://github.com/CiscoTestAutomation/genielibs.git

# put all packages in dev mode
bash$ cd genielibs
bash$ make develop

Now you should be able to develop the files and see it reflected in your runs. You may need to run make json, for example if you've created a new API.

ChangeLog

Copyright (c) 2020 Cisco Systems, Inc. and/or its affiliates