Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
Learn how to use Python to test the back-end of web services or APIs. We use industry standard real eCommerce API to practice testing using Python programming language.
Critical addition to your resume
If you are getting into the QA world or you are looking to advance your career, having API testing skill will accelerate your success. Python is one of the most popular languages to use in software testing, and knowing how to use it for API/Backend testing will expand your pool of possibilities.
In addition to using Python for API/Backend testing, the tools we will use are great addition to your resume. We will be using industry standard tools that can be applied to several tasks beyond API testing.
After completion of this course you will be able to go through interview as if you have API testing experience. You will also have plenty of APIs to test and practice.
Content and Overview
In this course we will spend some time creating an eCommerce application on our local machine. We will install a package that includes web server and database. Using this package we will install WordPress and install necessary plugins to make it an eCommerce application. The eCommerce application gives us all the APIs we will test.
We have access to the database so we will test API data against the database. We will create a efficiently structured test framework and learn how to use Python to perform our verification.
also learn how to use a Python test runner tool "pytest" see why test
runner tools are critical for automation testing.
What am I going to get from this course?
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: Introduction to the course|
|Section 2: Prepare Our Tools|
Summary of Tools we will use and whyPreview
Install webserver and database on our local machine (AMPPS)
Installing WordPress on local machine
Installing WooCommerce (our e-commerce) Plugin (key and secreate)
Installing WooCommerce Python wrapper. This module enables us to use Python to make requests to the WooCommerce API. We will use 'pip' to install the package.
Installing MySQL WorkBench
|Section 3: WooCommerce Settings and Documentation|
Configuring WooCommerce API
WooCommerce Official Documentation ReveiwPreview
|Section 4: Test Structure and Organization|
Create our structure
|Section 5: Custom tools (scripts we will use for DB and API)|
In this lecture we will create a class that will authenticate and make requests to the API. We will use methods of this call though out the course to make the request. We make a simple test method to test our class and our authentication.
In this video we add to function to our API class. The two methods are used to make 'POST' and 'GET' Rest requests. We will be using these two functions throughout the course.
DB Connection Module: connect and ‘SELECT’ statement
DB Connection Module: ‘UPDATE’ statement
|Section 6: TEST CASES|
In this video we look at what the 'products' endpoint does, what the payload looks like and what the response looks like. We will look at the official documentation.
In this video we will create the payload for the 'products' end point and we make the API call. The 'products' endpoint creates a new product in the database.
We continue to look at positive test case to create product. We made the API call on the last video, and on this video we verify the response. We compare the values in the response with the values in the payload for the call.
Once the product is created using the API, it is important to verify that it is actually recorded in the database. In this video we look at the product in the database using MySql Workbench. We will write the query we need to get the data. On the next video we will use this query to verify the data with Python.
In this video we write a test function that will query the database for a product, and compares the information in the database with the expected information. The expected information is the information we used in the payload when we created the product.
PRODUCTS endpoint > Negative TC-1: empty payload
PRODUCTS endpoint > Negative TC-2: missing ‘title’ parameter
PRODUCTS endpoint > Negative TC-3: empty string for ‘title’ parameter
PRODUCTS endpoint > Negative TC: verifications function for negative test
PRODUCTS endpoint > Negative TC-3 continue: empty string for ‘title’ parameter
|Section 7: TEST RUNNER TOOL “PY.TEST”|
Introduction to "py.test"Preview
Run "products" tests with "py.test"
|Section 8: "CUSTOMERS" endpoint test (API to create new customer)|
CUSTOMERS endpoint > Intro to ‘customers’ endpoint
CUSTOMERS endpoint > create random user information
CUSTOMERS endpoint > positive test, create payload and make API callPreview
CUSTOMERS endpoint > positive test, verify API response
We will use MySQL Workbench to write SQL query to get user information from database manually. Later we will use the SQL in our Python code to get the information.
CUSTOMERS endpoint > function to get customer info from db
CUSTOMERS endpoint > create helper module, move random generator function
CUSTOMERS endpoint > Positive TC verify customer created in db (with assert)
CUSTOMERS endpoint > Positive TC verify customer created in db (with if-else)
With 7+ years of overall engineering experience I have found my passion in software testing automation and Python has become my favorite tool to work with. I graduated with a MS degree in Mechanical Engineering from San Jose State University, and got into the IT field of software testing automation after graduation. I love to teach and learn as well. I hope to help students grow fast and advance in the field of software testing and automation.