User Tools

Site Tools


automation:test-the-network

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
automation:test-the-network [2025/07/18 14:46] jotasandokuautomation:test-the-network [2025/07/18 22:04] (current) jotasandoku
Line 5: Line 5:
   * System testing - entire application   * System testing - entire application
  
 +----
  
 +
 +====PYATS===
 +  * {{ :automation:pyats_and_network_validation.pdf |}}
 +  * {{ :automation:pyats_and_network_validation_examples.pdf |}}
 +  * {{ :automation:pyats_oreilly-danw.pdf | OREILLY-PRES}} / [[https://github.com/dannywade/oreilly-live-training-pyats]]
 +
 +Topics
 +  * 'Testbed' - Describes the physical devices and connections in a YAML file. Is an inventory file but augmented. You can have interfaces and topology with links and also credentials. Unicon is a library underneath. Used to control device connectivity (~paramiko)
 +  * TestScripts: Contains the logic of all the tests.
 +    * Jobs: executes TestScripts as tasks. Also allows to execute multiple TestScripts in parallel
 +
 +  * pyATS library (Genie): Data PARSING. Tooling used to extract the network data.
 +    * Genie Harness: Used to build **test cases using YAML datafiles**
 +
 +  * Easypy - Runtime
 +  * Others: Blitz, Clean, 'Health Check'; Robot
 +  * AEtest (Easy Testing): scaffolding/framework for the Testing
 +
 +
 +=== TESTSCRIPT ===
 +Is the python file that holds all your tests.
 +
 +  * Common setup: Initial configuration and device initialization including loops - decorator : ''@aetest.setup''
 +  * Testcases: 'Container'(self-contained) for our tests. Setup/Test/Cleanup. testcase.uid (must be unique, is a python 'property') - decorator: ''@aetest.test''
 +  * Cleanup: Resets the testing environment after the test - decorator: ''@aetest.cleanup''
 +
 +** see slides 46,47 for examples (classes..)) **
 +\\
 +Test Parameters: TestScript > Testcase > TestSection  (they are classes (eg: testcase). see code))
 +
 +  * Callable 
 +  * Test Parameters - decorator : ''@aetest.parameter''
 +  * Test Execution: 
 +    * Standalone: all logging is sent to stdout. See slide 64-65
 +    * Easypy: Standardized runtime env within pyATS. Helpful for regression testing
 +
 +----
 ---- ----
 ==== OPTIONS ==== ==== OPTIONS ====
Line 95: Line 133:
  
  
-====PYATS=== 
-  * {{ :automation:pyats_and_network_validation.pdf |}} 
-  * {{ :automation:pyats_and_network_validation_examples.pdf |}} 
  
-Topics 
-  * 'Testbed' - Describes the physical devices and connections in a YAML file. Is an inventory file but augmented. You can have interfaces and topology with links and also credentials. Unicon is a library underneath. Used to control device connectivity, It abstracts it. 
-  * TestScripts: Contains the logic of all the tests. 
-    * Jobs: executes TestScripts as tasks. Also allows to execute multiple TestScripts in parallel 
- 
-  * pyATS library (Genie): Data PARSING. Tooling used to extract the network data. 
-    * Genie Harness: Used to build **test cases using YAML datafiles** 
- 
-  * Easypy - Runtime 
-  * Others: Blitz, Clean, 'Health Check'; Robot 
-  *   * AEtest Infrastructure - Testing Framework 
- 
----- 
  
 ===== Further Reading ===== ===== Further Reading =====
automation/test-the-network.1752850010.txt.gz · Last modified: by jotasandoku