HOME > Development > Automated Software Testing with Python

Automated Software Testing with Python

  • Development
  • Apr 25, 2025
SynopsisAutomated Software Testing with Python, available at $99.99,...
Automated Software Testing with Python  No.1

Automated Software Testing with Python, available at $99.99, has an average rating of 4.63, with 150 lectures, 14 quizzes, based on 5376 reviews, and has 38103 subscribers.

You will learn about Everything you need to know about automated software testing with Python (and how to enjoy testing, too!) Avoid common pitfalls and implement best practices when writing automated tests Write complete system tests using Python and tools like Postman Automate your application testing by setting up a continuous integration pipeline using Travis CI Browser-based acceptance testing using Behave and Selenium WebDriver This course is ideal for individuals who are Advanced students who want to learn about testing their Python applications to build more complete solutions or Professionals wanting to learn more about automated software testing in their workplace or Automated software testers and software developers It is particularly useful for Advanced students who want to learn about testing their Python applications to build more complete solutions or Professionals wanting to learn more about automated software testing in their workplace or Automated software testers and software developers.

Enroll now: Automated Software Testing with Python

Summary

Title: Automated Software Testing with Python

Price: $99.99

Average Rating: 4.63

Number of Lectures: 150

Number of Quizzes: 14

Number of Published Lectures: 142

Number of Published Quizzes: 7

Number of Curriculum Items: 164

Number of Published Curriculum Objects: 149

Original Price: $119.99

Quality Status: approved

Status: Live

What You Will Learn

  • Everything you need to know about automated software testing with Python (and how to enjoy testing, too!)
  • Avoid common pitfalls and implement best practices when writing automated tests
  • Write complete system tests using Python and tools like Postman
  • Automate your application testing by setting up a continuous integration pipeline using Travis CI
  • Browser-based acceptance testing using Behave and Selenium WebDriver
  • Who Should Attend

  • Advanced students who want to learn about testing their Python applications to build more complete solutions
  • Professionals wanting to learn more about automated software testing in their workplace
  • Automated software testers and software developers
  • Target Audiences

  • Advanced students who want to learn about testing their Python applications to build more complete solutions
  • Professionals wanting to learn more about automated software testing in their workplace
  • Automated software testers and software developers
  • Welcome to the most comprehensive course on Automated Software Testing with Python on Udemy.

    Testing automation doesn’t have to be painful. Software testing is an essential skill for any developer, and I’m here to help you truly understand all types of test automation with Python.

    I’m Jose, a software engineer and founder of Teclado. The focus of this course is on testing for the web—we’ll be working with REST APIs and web applications, and technologies such as unittest, Postman, and Selenium WebDriver.

    Fear not though, after going through this course, you’ll be able to take your new testing knowledge and apply it to any project, even non-web projects!

    What will you work with?

    This course is jam-packed with all the latest technologies for you to use professionally and in personal projects:

  • The unittest library, Python’s standard automated software testing library;

  • Mocking and patching, two essential tools to reduce dependencies when testing;

  • unit, integration, system, and acceptance testing—all types of testing to have you fully covered;

  • Postman for easy collaboration and testing while developing;

  • Selenium WebDriver for automated browser tests;

  • Git and Travis for continuous integration of your project.

  • Fundamental Software Testing Skills

    We will cover every fundamental software testing skill that you need to know in order to get a job testing or to apply these skills in your existing projects.

    From things like mocking and patching using the unittest library, which reduce dependencies and turn complex tests to simple ones; to looking at all types of testing: simple unit tests to large system tests and even customer acceptance tests.

    The Testing Pyramid

    The Testing Pyramid says you should have a lot of unit tests, slightly fewer integration tests, even fewer system tests, and as few acceptance tests as possible.

    Throughout the course we work on this concept, making sure that we have full coverage of every component of our system with unit tests. Then we test the dependencies using integration tests. Finally, we cover the entire system and its assumptions using system tests. Of course, we’ll also look at what acceptance testing is, how we come up with acceptance tests, and some of the best ways to write acceptance tests for a web application using Behavior-Driven Development and Selenium WebDriver.

    Automated Browser Testing with Selenium WebDriver

    Selenium WebDriver is extremely powerful, particularly when coupled with the efficient and tried-and-tested approach recommended in this course. We’ll design our acceptance tests professionally—just the way you’d do at a software testing job. We’ll use page models, locators, and step definitions to structure the automated tests in a reusable way. The customers will be able to come up with acceptance tests that you can easily translate to code.

    We’ll also learn about implicit and explicit waits with Selenium WebDriver and Python, a key concept to speed up the runtime of your acceptance tests.

    Continuous Integration

    We also cover how you can take automated testing much further in your projects.

    By implementing a Continuous Integration pipeline that runs your tests whenever you make any changes, you’ll have much higher quality in your projects and not let any pesky bugs pass you by. We’ll look at putting our projects in GitHub and liking the CI pipeline with them.

    I’m really excited to guide you through this course!

    Join me in this automated testing journey. I‘ll see you on the inside!

    Course Curriculum

    Chapter 1: Welcome!

    Lecture 1: How to take this course

    Lecture 2: Installing Python and PyCharm on Windows

    Lecture 3: Installing Python and PyCharm on macOS

    Chapter 2: A Full Python Refresher

    Lecture 1: Introduction to this section

    Lecture 2: Access the code for this section here

    Lecture 3: Variables in Python

    Lecture 4: Solution to coding exercise: Variables

    Lecture 5: String formatting in Python

    Lecture 6: Getting user input

    Lecture 7: Writing our first Python app

    Lecture 8: Lists, tuples, and sets

    Lecture 9: Advanced set operations

    Lecture 10: Solution to coding exercise: lists, tuples, sets

    Lecture 11: Booleans in Python

    Lecture 12: If statements

    Lecture 13: The in keyword in Python

    Lecture 14: If statements with the in keyword

    Lecture 15: Loops in Python

    Lecture 16: Solution to coding exercise: flow control

    Lecture 17: List comprehensions in Python

    Lecture 18: Dictionaries

    Lecture 19: Destructuring variables

    Lecture 20: Functions in Python

    Lecture 21: Function arguments and parameters

    Lecture 22: Default parameter values

    Lecture 23: Functions returning values

    Lecture 24: Solution to coding exercise: Functions

    Lecture 25: Lambda functions in Python

    Lecture 26: Dictionary comprehensions

    Lecture 27: Solution to coding exercise: dictionaries

    Lecture 28: Unpacking arguments

    Lecture 29: Unpacking keyword arguments

    Lecture 30: Object-Oriented Programming in Python

    Lecture 31: Magic methods: __str__ and __repr__

    Lecture 32: Solution to coding exercise: classes and objects

    Lecture 33: @classmethod and @staticmethod

    Lecture 34: Solution to coding exercise: @classmethod and @staticmethod

    Lecture 35: Class inheritance

    Lecture 36: Class composition

    Lecture 37: Type hinting in Python 3.5+

    Lecture 38: Imports in Python

    Lecture 39: Relative imports in Python

    Lecture 40: Errors in Python

    Lecture 41: Custom error classes

    Lecture 42: First-class functions

    Lecture 43: Simple decorators in Python

    Lecture 44: The at syntax for decorators

    Lecture 45: Decorating functions with parameters

    Lecture 46: Decorators with parameters

    Lecture 47: Mutability in Python

    Lecture 48: Mutable default parameters (and why theyre a bad idea)

    Lecture 49: Conclusion of this section

    Chapter 3: Your first automated software test

    Lecture 1: Introduction to this section

    Lecture 2: Access the code for this section here

    Lecture 3: Setting up our project

    Lecture 4: Important: the naming of test files

    Lecture 5: Writing our first test

    Lecture 6: Testing dictionary equivalence

    Lecture 7: Writing blog tests and PyCharm run configurations

    Lecture 8: The __repr__ method, and intro to TDD

    Lecture 9: Integration tests and finishing the blog

    Lecture 10: Mocking, patching, and system tests

    Lecture 11: Patching the input method and returning values

    Lecture 12: Taking our patching further

    Lecture 13: The last few patches!

    Lecture 14: The TestCase setUp method

    Lecture 15: Conclusion of this section

    Chapter 4: Testing a Flask Endpoint

    Lecture 1: Introduction to this section

    Lecture 2: Access the code for this section here

    Lecture 3: Setting our project up

    Lecture 4: Creating our Flask app

    Lecture 5: Our first System test

    Lecture 6: Refactoring our System Tests

    Lecture 7: Conclusion of this section

    Chapter 5: REST API Testing, Part I

    Lecture 1: Introduction to this section

    Lecture 2: Access the code for this section here

    Lecture 3: A look at a REST API with Flask

    Lecture 4: Unit testing a REST API

    Lecture 5: Setting up our generic BaseTest

    Lecture 6: Integration testing a REST API

    Lecture 7: Conclusion of this section

    Chapter 6: REST API Testing, Part II

    Lecture 1: Introduction to this section

    Lecture 2: Access the code for this section here

    Lecture 3: Setting up our project

    Lecture 4: Testing foreign key constraints with Python

    Lecture 5: Unit testing models and SQLAlchemy mappers

    Lecture 6: Finishing our Store tests

    Instructors

  • Automated Software Testing with Python  No.2
    Jose Salvatierra
    Founder of Teclado and Software Engineer
  • Automated Software Testing with Python  No.3
    Teclado by Jose Salvatierra
    Software Development For Everyone
  • Rating Distribution

  • 1 stars: 56 votes
  • 2 stars: 77 votes
  • 3 stars: 441 votes
  • 4 stars: 1858 votes
  • 5 stars: 2947 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!