Online course on demand
Aimed at people who perform Software Verification tasks in order to help them in test automation tasks through the use of scripts written in Python.
Through AI-assisted learning techniques, participants will learn the fundamentals of Python, explore standard and third-party libraries, and delve into test automation frameworks. The course focuses on hands-on experience to develop effective test automation skills.
Course format
Duration: 24 hours, taught over 5 days (5 hours each day, except Friday)
Format: Online training led by the instructor
The course is taught in Spanish or English, with slides in English.
The course is divided into 9 modules that can be taken in their entirety or by selecting those that are of interest to you.
Prerequisites
- Basic knowledge of programming concepts
- Familiarity with software testing principles
- No prior Python experience is required, but it is helpful
- A laptop is required to carry out the practices.
Target audience
This course is ideal for:
- Verification engineers looking to automate their testing processes
- Software developers interested in improving their testing skills
The Trainer
Miguel Miranda
Miguel Miranda has over 20 years of experience as a software consultant specializing in Python and other programming languages. He has extensive experience using AI-based tools for software development and process automation.
Course syllabus
Day 1: Python Language
Module 1: Introduction to Python
- Why Python?
- History and versions of Python
- Python implementations
- Python 2 vs Python 3
- Coding style guidelines (PEP 8)
- Python package and virtual environment management
Module 2: Python Fundamentals
- Keywords and operators
- Basic data types and data structures
- Control structures
- Exceptions
- Built-in functions
Module 3: Advanced Python Concepts
- Functions, classes, modules and packages
- Lambda Functions
- List Comprehensions
- Generators
- Decorators
- Data Classes
Day 2: Python Standard Library
Module 4: Basic Features of the Standard Library
- Run-time Features
- Application Building Blocks
- File System Operations
- Text Processing and Regular Expressions
Module 5: Data Handling and Analysis
- Dates and Times
- Persistence and Data Exchange
- Data Compression and Archiving
- Cryptography
- Mathematics and Data Analysis
Module 6: Advanced Topics of the Standard Library
- Concurrency with Processes
- Networks and Internet/Web Services
- GUI Frameworks (brief overview)
Day 3: Python Testing Frameworks
Module 7: Basic Testing Concepts
- Source Code Verification
- Unit Testing with pytest
- Property-based testing with hypothesis
Module 8: Advanced testing techniques
- Mutation testing
- Behavior-driven testing with Behavior
- Data-driven and keyword-driven testing with Robot Framework
Module 9: Practical application: creating your own test automation tool
In this final module, you will apply the knowledge and skills acquired throughout the course to develop a practical test automation tool of your choice. This hands-on project integrates Python programming, testing frameworks, and AI-assisted development.
Choose a project, add value to your testing workflow, or address a specific challenge in your work environment.
Example project ideas:
- AI-enhanced test case generator
- Automated API testing for web applications
- Behavior Driven Development (BDD) test automation framework
