Automated Software Testing with Python
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 they're 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
-
Jose Salvatierra
Founder of Teclado and Software Engineer -
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!
You may also like
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024
- Top 10 Gardening Courses to Learn in November 2024