Overview Effective way of introducing automation to your project Selecting the best and right automation tool Analysing which test cases need to be automated Effective way of planning, designing and development Benefits of Automation Testing Developing scripts effectively Effectively executing and maintaining test scripts Best practices required to follow for successful automation testing Methods of using the tools to control the execution of the tests Comparing the expected outcomes with the actual outcomes Analysing regression test cases and Load testing scenarios Automating difficult tasks and repetitive tasks How to run scripts quickly and repeatedly
Advanced Python training course description This course caters to network engineers aiming to enhance both their Python proficiency and network automation skills. Delving deeper into key areas such as netmiko, Nornir, and ncclient, we also focus on automating network testing and validation. Participants gain greater confidence working with Python functions, classes, objects, and error handling. The course additionally introduces more libraries like Scrapli, TTP, pyATS, Genie, pybatfish, and Suzieq, which cover parsing strategies, automation testing, validation, network analysis, observability, and telemetry. The curriculum also encompasses concurrency techniques. What will you learn Write Python modules and functions. Evaluate techniques to parse unstructured data. Use NETCONF filters. Handle Python errors effectively (try, assertâ¦). Use postman. Automate testing and validation of the network. Use scrapli, Genie, batfish and Suzieq. Advanced Python training course details Who will benefit: Network engineers. Prerequisites: Python for network engineers Duration 5 days Advanced Python training course contents Review CLI, NETCONF, RESTCONF, structured versus unstructured data, gNMI and when to use which. PEP 8. Naming conventions. Packages, modules, Classes and methods. The scrapli library. Netmiko versus scrapli. Hands on: scrapli, Dictionaries versus Regular Expressions. Modules and Functions Writing your own modules, containers versus packages, virtual environments. Best practices, calling functions, writing your own functions. Parameters, arguments. Named arguments, dictionaries as arguments. Builtins. Docstrings. Main. __name__, __main__ . Program arguments. Hands on: Getting interfaces, showing interface status using Netmiko and functions. Using dictionaries as arguments. Writing your own modules. Parsing strategies Turning unstructured data into structured data. textfsm, PyATS Genie parser, NAPALM getters, Template Text Parser. Hands on: Genie parser, TTP. Accessing structured data with lists and dictionaries. Classes, objects and Python Python classes in Genie, PyEZ and others . Hands on: studying network automation classes, objects, methods and attributes. Configuration management - more nornir, ncclient, requests Nornir tasks. Nornir results, Nornir functions, Nornir plugins. Nornir processors. YANG, YANG models, pyang. NETCONF hello. Capabilities. Schemas. Filters. Subtrees. XPATH. Exploring available YANG data models. NETCONF and network wide transactions. Asserting NETCONF capabilities. Configuration types. Locking configurations, commits. NETCONF data stores. Netconf-console. RESTCONF differences from NETCONF. URI construction. Postman. More XML and JSON. Git and configuration versions. Hands on: Nornir and Jinja2. Exploring available models, NETCONF filters. Using postman. Python error handling and debugging Context handlers, try, assert, logging, pdb, pytest, unit testing, chatgpt. Hands on: Writing code with each of the error handling methods, investigating what happens on an error. Use chatgpt to debug your code. Python Automation Testing Testing and validation. pyATS, Genie. Testbed file. Genie parse, genie learn, genie diff. Genie conf, Genie ops, Genie SDK, Genie harness. Xpresso. Hands on: Using Genie for state comparisons of the network. Network analysis Batfish, pybatfish, configuration analysis, analysing routing, analysing ACLs. Pandas. Pandas dataframe. Filtering and selecting values of interest. Hands on: Use Batfish to analyse network snapshots, find network adjacencies, flow path analysis. Network observability Suzieq, using docker, using as a package. Sqpoller, suzieq-gui, suzieq-cli, sq-rest-server. Namespaces and seeing devices, network state and Asserts. Time based analysis, snapshots and changes. Hands on: Suzieq: Gathering data from the network, analysing data from the network. Network state assertion. Telemetry gRPC, gNMI. CAP, GET, SET. Subscriptions. Model Driven telemetry. Hands on: Analysing telemetry data with Python. Concurrency asyncio, threads, processes. Nornir concurrency. Scrapli and netmiko concurrency. Hands on: Multiple SSH connections to devices at same time. Scarpli asyncio.
Assuring Quality Through Acceptance Testing: In-House Training It is also the business analyst's responsibility to confirm that the resulting solution developed by IT does, in fact, solve the defined problem. This is done first through testing, especially acceptance testing, and then through monitoring of the installed solution in the user community. It is the business analyst's job to define the business problem to be solved by IT. It is also the business analyst's responsibility to confirm that the resulting solution developed by IT does, in fact, solve the defined problem. This is done first through testing, especially acceptance testing, and then through monitoring of the installed solution in the user community. The business analyst is not only concerned with the testing itself, but also with the management and monitoring of the users doing the acceptance testing, and recording, analyzing, and evaluating the results. What you will Learn Upon completion, participants will be able to: Create a set of acceptance test cases Manage and monitor an acceptance test stage where users perform the testing Work with the development team in the systems testing stage Assess the solution once it is in the business environment Foundation Concepts The role of the business analyst An introduction to the BABOK® Guide BA roles and relationships through the project life cycle Introduction to assuring software quality through acceptance testing The Scope of IT Testing Overview of testing stages The testing process Testing documentation Pre-Acceptance Testing The BA's role in testing Early development testing stages (unit and integration) Late development testing stage (system) The Acceptance Test Stage - Part I (Planning, Design, and Development) Overview of user acceptance testing Acceptance test planning Designing user acceptance tests Developing individual user acceptance test cases Building effective user acceptance test scenarios The Acceptance Test Stage - Part II (Execution and Reporting) Operating guidelines Execution Reporting Post-Acceptance Testing Overview Project implementation Project transition (project closure) Production through retirement Testing Commercial Off-the-Shelf (COTS) Software Overview Selecting the software Implementing the software Summary What did we learn and how can we implement this in our work environments?