With a good amount of practical knowledge and skills in implementing Python in testers’ work, we’re ready to teach you how to automate tests in an easy and enjoyable way. We’d like to show you a practical approach to using Python as your go-to platform when working with UI and API test automation as well as some useful tools and skills when working with data and BDD approach.
At the end of the course, you will be able to:
Incorporate good practices in writing tests
Understand the structure of Python test frameworks
Write and debug tests using Python test frameworks (py.test/unittest)
Implement easily maintainable automated REST API tests (requests)
Create web and mobile automated tests (Selenium Webdriver)
Understand the value of good practices for API and UI testing
Find out what the standards for Gherkin are and how to write step definition code
Apply readable livinGherkin specifications with Cucumber and step definition code
Run basic scenario for real examples (football scores API + Python & behave)
Define your own test exceptions
Introduction
Getting started
Preparing working environment
IDE Navigation (PyCharm)
Creating Python project
Managing dependencies
Code debugging
Writing tests
Test frameworks available on the market
Introduction to py.test
Create your first test
Parametrization of test functions
Exceptions
Specifying / selecting tests
Running multiple tests
Test reports generation
Testing REST API
Required tools installation
GET, POST, PUT, DELETE
Requests library
Handling HTTP requests
Response parsing
Hamcrest assertions
Flask microframework
Selenium + webdriver
Getting driver to run the browser
Selectors
Basic actions
Implementing page object pattern
Python meets BDD
BDD basics
Gherkin syntax
BDD good practices
BDD with behave library
Behave main structure
Behave keywords and steps implementation
Context and environment.py maintenance
Passing tables and examples to tests
The course is dedicated to people having basic hands-on experience in Python programming, ie. if you know how to use variables, write methods, use classes and are familiar with concepts such as inheritance, encapsulation, abstraction, etc. - you’re good to go (if not, don’t worry - we have a course for you here!). Many groups can benefit from the course, especially:
Software Testers looking for an easy way to automate tests
Software Developers interested in test automation
People responsible for the quality of software products - Product Owners, DevOps, Programmers, Consultants, Support Specialists, etc.