All Projects → aristanetworks → robotframework-aristalibrary

aristanetworks / robotframework-aristalibrary

Licence: BSD-3-Clause License
Robot Framework library for Arista EOS

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects
ruby
36898 projects - #4 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to robotframework-aristalibrary

Red
RED - Robot Editor
Stars: ✭ 310 (+2114.29%)
Mutual labels:  robot, robotframework
page-modeller
⚙️ Browser DevTools extension for modelling web pages for automation.
Stars: ✭ 66 (+371.43%)
Mutual labels:  robot, robotframework
ansible-avd
Ansible Arista Validated Design
Stars: ✭ 134 (+857.14%)
Mutual labels:  arista, eos
openmgmt
Documentation and examples for using open network management tools such as OpenConfig
Stars: ✭ 23 (+64.29%)
Mutual labels:  arista, eos
Autolink
AutoLink是一个开源Web IDE自动化测试集成解决方案
Stars: ✭ 129 (+821.43%)
Mutual labels:  robot, robotframework
Rcc
RCC is a set of tooling that allows you to create, manage, and distribute Python-based self-contained automation packages - or 'robots' as we call them.
Stars: ✭ 168 (+1100%)
Mutual labels:  robot, robotframework
robot-framework-docker
Docker image to run robot framework acceptance testing in a docker container
Stars: ✭ 24 (+71.43%)
Mutual labels:  robot, robotframework
flaskerk
A flask extension for api doc and validation of request&response.
Stars: ✭ 24 (+71.43%)
Mutual labels:  validation
securbot
Security robot prototype
Stars: ✭ 20 (+42.86%)
Mutual labels:  robot
array-validation
Validation utilities for array structure
Stars: ✭ 14 (+0%)
Mutual labels:  validation
yform standalone validator
YForm-Erweiterung: Validieren von PHP Arrays ohne HTML-Formular
Stars: ✭ 23 (+64.29%)
Mutual labels:  validation
granitic
Web/micro-services and IoC framework for Golang developers
Stars: ✭ 32 (+128.57%)
Mutual labels:  validation
checker
Golang parameter validation, which can replace go-playground/validator, includes ncluding Cross Field, Map, Slice and Array diving, provides readable,flexible, configurable validation.
Stars: ✭ 62 (+342.86%)
Mutual labels:  validation
eos-client
PHP library of simple and extensible to use eos rpc and offline signature.
Stars: ✭ 43 (+207.14%)
Mutual labels:  eos
checktestdata
checks integrity of test data in programming contests like the ACM ICPC
Stars: ✭ 19 (+35.71%)
Mutual labels:  validation
Chat-Bot
Chatbot – is a computer program that simulates a natural human conversation. Users communicate with a chatbot via the chat interface or by voice, like how they would talk to a real person.
Stars: ✭ 26 (+85.71%)
Mutual labels:  robot
js
Validate Swedish personal identity numbers
Stars: ✭ 43 (+207.14%)
Mutual labels:  validation
ansible-cvp
Ansible modules for Arista CloudVision
Stars: ✭ 44 (+214.29%)
Mutual labels:  arista
prop-types
Fluent prop validation for Vue
Stars: ✭ 97 (+592.86%)
Mutual labels:  validation
WebDemo
Robot Framework web testing demo using SeleniumLibrary
Stars: ✭ 161 (+1050%)
Mutual labels:  robotframework

The Arista Library for Robot Framework

Introduction

AristaLibrary aims to simplify testing projects on Arista EOS <http://www.arista.com> using Robot Framework <http://robotframework.org/> by adding a number of EOS-centric keywords. The Library works by using the PyEAPI module to interact with EOS nodes.

Prerequisites

Installation

The easiest way to install is to use pip <http://www.pip-installer.org/en/latest/>:

pip install robotframework-aristalibrary

Upgrade using:

pip install --upgrade robotframework-aristalibrary

To install from source:

git clone https://github.com/aristanetworks/robotframework-aristalibrary.git
cd robotframework-aristalibrary
# Optionally, checkout the development branch"
git checkout develop"
python setup.py install

Keyword Documentation

See the AristaLibrary <http://aristanetworks.github.io/robotframework-aristalibrary/AristaLibrary.html> keyword documentation.

Example Robot Test

# -*- coding: robot -*-
# :setf robot
# :set noexpandtab
*** Settings ***
Documentation   This is a sample Robot Framework suite which takes advantage of
... the AristaLibrary for communicating with and controlling Arista switches.
... Run with:
... pybot --pythonpath=AristaLibrary demo/sample-test-refactored.txt

Library AristaLibrary
Library Collections
Suite Setup Connect To Switches
Suite Teardown  Clear All Connections

*** Variables ***
${TRANSPORT}    http
${SW1_HOST} localhost
${SW1_PORT} 2080
${SW2_HOST} localhost
${SW2_PORT} 2081
${USERNAME} apiuser
${PASSWORD} donttell

*** Test Cases ***
Ping Test
    [Documentation] Configure Et1 on both nodes and ping between them
    [tags]  Configure
    Configure IP Int    1   ethernet1   10.1.1.0/31
    Configure IP Int    2   ethernet1   10.1.1.1/31

    ${output}=  Enable  ping 10.1.1.0
    ${result}=  Get From Dictionary ${output[0]}    result
    Log ${result}
    ${match}    ${group1}=  Should Match Regexp ${result['messages'][0]}    (\\d+)% packet loss
    Should Be Equal As Integers ${group1}   0   msg="Packets lost percent not zero!!!"

*** Keywords ***
Connect To Switches
    [Documentation] Establish connection to a switch which gets used by test cases.
    Connect To  host=${SW1_HOST}    transport=${TRANSPORT}  username=${USERNAME}
    ... password=${PASSWORD}    port=${SW1_PORT}
    Configure   hostname veos0
    Connect To  host=${SW2_HOST}    transport=${TRANSPORT}  username=${USERNAME}
    ... password=${PASSWORD}    port=${SW2_PORT}
    Configure   hostname veos1

Configure IP Int
    [Arguments] ${switch}   ${interface}    ${ip}
    Change To Switch    ${switch}
    @{cmds}=    Create List
    ... default interface ${interface}
    ... interface ${interface}
    ... no switchport
    ... ip address ${ip}
    ... no shutdown
    Configure   ${cmds}

Release Notes

Release notes are available in the GitHub releases <https://github.com/aristanetworks/robotframework-aristalibrary/releases>.

Support and Contacts

AristaLibrary is a community-supported project, maintained by Arista EOS+. Contact the maintainers at [email protected].

Contributing

Contributing is encouraged via pull requests. Please see CONTRIBUTING.rst for more information.

License

All code within this repository is made available under the BSD3 license and via the LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].