TTPS4832: Test Automation with Python

Become an EPIC Affiliate

To view the class schedule you need to become an Affiliate

  • Largest “Guaranteed To Run” public technical training schedules available
  • Easy to become an Affiliate – no charge or fee
Become an EPIC Affiliate

already an Affiliate?  Login

About this Course

The pytest framework is simple to use but powerful enough to cover complex testing integration scenarios. PyTest is considered by many to be the true Pythonic approach to testing in Python.

This course provides students with the skills required to get started with pytest right away, and get the most out of it in their daily workflow, exploring powerful mechanisms and plugins to facilitate many common testing tasks. Students will also learn how to use pytest in existing unittest-based test suites and will learn some tricks to make the jump to a pytest-style test suite quickly and easily.

Audience Profile

This in an introductory-level course geared for QA, Test team members and others who want to use the Python testing framework PyTest to implement code testing strategies.

At Course Completion

This skills-focused course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Working within in a hands-on learning environment students will learn to:

· Become proficient with pytest from day one by solving real-world testing problems

· Use pytest to write tests more efficiently

· Scale from simple to complex and functional testing

· Write and run simple and complex tests

· Organize tests in fles and directories

· Find out how to be more productive on the command line

· Markers and how to skip, xfail and parametrize tests

· Explore fxtures and techniques to use them effectively, such as tmpdir, pytestconfg, and monkeypatch

· Convert unittest suites to pytest using little-known techniques

Outline

1. Python Refresher

· Python Overview

· Python Basics

· Python Lab

2. Introducing PyTest

· Why Spend time writing test

· UnitTest Module

· Why PyTest?

· Introductory Lab

3. Writing and Running Test

· Installing PyTest

· Writing and Running Tests

· Organizing files and packages

· Command Line options

· Configure pytest.ini

· Install and Config Lab

4. Markers and Parameters

· Mark Basics

· Built-in marks

· Parameterization

· Markers and Parameters Lab

5. Fixtures

· Introduction to Fixtures

· Sharing fixtures with conftest.py files

· Scopes

· Autouse

· Parameterizing fixtures

· Using marks from fixtures

· Built-in fixtures

· Best Practices

· Fixtures Lab

· Fixtures Lab 2

6. Plugins

· Finding and installing plugins

· Overview of plugins

· Plugin Lab

7. From UnitTest to PyTest

· Use PyTest as a Test Runner

· Convert asserts with unitest2pytest

· Handling setup/teardown

· Managing test hierarchies

· Refactoring test utilities

· Migration strategies

Prerequisites

Attendees should have prior basic Python scripting experience. Students should have some familiarity with tools to be used in this course: PyCharm, Jupyter Notebook and basic GIT.