Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udemy

Real World Python Test Automation with Pytest (Django app)

via Udemy

Overview

Learn Pytest by building a full Django application with a Continuous Integration system, software testing best practices

What you'll learn:
  • Learn the ins and outs of Pytest
  • Build a real world Django web server
  • Build a continuous integration system
  • Testing Best Practices
  • Build high-performing, reliable automated test suites
  • Allure Reporting
  • Slack messaging
  • Unit, Integration, E2E, performance tests
  • Mocking and Patching

This is a MUST course for anyone who cares about testing.

I teach the ins and outs of pytest while building a real-world Django application (including a continuous integration system in bitbucket).

In this course, we will build a very simple Django server, I will teach just enough Django so that we will be able to build the application and then focus on testing it.

We will together test the application from all angels - Unit tests, integration tests, APItests, end-to-end tests , and performance tests with (a total of over40 tests)

You will end up with a complete CIsystem that integrates bitbucket cloud pipelines, slack messaging, and allure reporting.
Every time we will make a push, the CIsystem will run our tests and will notify us if the build passed/failed.

In this course, we go in-depth, and we will even implement together (from scratch) some of pytest's features so that we will know what happens under the hood when pytest is running our tests.


This is not an entry-level course; basic knowledge of python is needed

You will learn:

Pytest features (in-depth)

  • Fixtures

  • Markers

  • Parametrize

  • Skip, xfail

  • Pytest.ini

  • Pytest-django

  • Pytest-cov

  • pytest-xdist

  • unittest library, mocks

  • Requests library

Django (just enough to build a web server)

  • Rest API

  • Models, Migrations

  • Views

  • Serializers

  • SQLite3 DB

  • Email backends

Continuous Integration (in-depth)

  • Bitbucket pipelines

  • Bitbucket environment variables

  • Parallel steps

  • Docker

  • Slack messaging integration

  • Allure Reporting

Testing (In-depth)

  • Unit tests

  • Mocking. Patching, Stubs

  • Integration tests

  • Performance tests

  • Testing environments

Python best practice

  • Virtual environments: pipenv

  • Pipfile

  • Type hinting

  • Black formatter

  • .env File

Recreating react our projects UI(No prior knowledge is needed

Syllabus

  • Introduction: Course topics, learning tips
  • Pytest Quick Start Tutorial
  • Unit tests VS Integration tests
  • Setting Up Your Development Environment
  • Creating and testing our awesome Django project
  • Pytest automatic testing for our Django application
  • Continuous Integration
  • Django emailing service
  • Exploring Pytest with Fibonacci
  • Performance Testing
  • Pytest Assert Magic
  • Endpoint Assignment
  • Pytest-xdist
  • Slack CI Integration
  • Advanced Pytest Fixtures
  • Conftest.py files and .env file
  • Server Agnostic API Testing (requests library)
  • Allure Report Tool
  • Cool Plugins For pytest
  • Mocking in Python
  • Testing Concepts
  • Frontend
  • Troubleshooting Section
  • Congratulations - Software Developer Certificate

Taught by

Eden Marco

Reviews

4.5 rating at Udemy based on 833 ratings

Start your review of Real World Python Test Automation with Pytest (Django app)

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.