Postman: The Complete Guide - REST API Testing
Last updated 8/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.45 GB | Duration: 14h 46m
Last updated 8/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.45 GB | Duration: 14h 46m
Postman API testing for manual and automated tests. Automate with Newman, Jenkins or any other CI tool.
What you'll learn
Create GET, POST, PUT, DELETE request
Understand GET vs POST request method
Work with real-world APIs (Github API, Trello API)
JavaScript basics for tests
Write API tests in Postman
Use data from Excel files (CSV) or JSON
Use Postman variables to create workflows and scenarios
Run API tests with Newman in Jenkins, GitLab CI or TeamCity
Use OAuth2, API keys, tokens, JWT, basic auth
Test file uploads
Use mock servers
Collaborate using Team Workspaces
Requirements
Basic programming and/or JavaScript knowledge is required (needed for writing tests)
Basic HTTP knowledge required (address, message body, headers, cookies, …)
Basic knowledge about RESTful APIs and JSON
Basic Jenkins experience, if an integration with Jenkins is desired
Basic NodeJS/NPM experience (needed for test automation)
Optional - Basic Docker experience (for Jenkins or Newman)
A computer with Windows, macOS or Linux is required for viewing the lectures and installing Postman. Using a mobile phone/tablet is not recommended.
Registering to a few reputable public APIs is required for you to be able to follow along with the course
Description
RESTful APIs (or simply REST API) are everywhere nowadays but at the same time they are getting more complex to get started with: different HTTP methods,, headers, cookies, dealing with file uploads or authentication with api keys, tokens, OAuth and so much more.But before you start investing time writing code to retrieve the data the API is offering, why not test the request first to make sure everything is working as expected?This is where the Postman App comes in! Postman allows you very quickly create a request with the required HTTP method and parameters, submit the request and easily inspect the results. Postman can help if you are developing APIs as well! I have created this course for testing engineers and well as for software developers. Postman can help you during the development of your API as well as after the API is completed, by running tests that make sure your API is still working as intended.In the first part of the course we will start exploring the features of Postman and continue by writing API tests with the intention of integrating them in a CI server where the tests will run on a current basis.But this is not the normal course you take part in. Because your needs may be different and because I hate leaving you wondering what to do next, the second part of the course will include user questions and answers to problems that were not yet covered in the course or that are more specific and may not interest everybody.So let’s look at what you are going to learn:Start with simple requests and advance towards more complex scenariosLearn to deal with authentication / authorization mechanisms like Basic Auth, API Keys, or OAuth.Start writing API testsOrganize tests in collections and share them with your teamRun API tests in Jenkins or any other CI serverYou ask, I answerSo after this course you will know how to use Postman as a pro.Excited to learn Postman? Sign-up up today!
Overview
Section 1: Introduction and first steps in Postman
Lecture 1 Course overview
Lecture 2 About the course
Lecture 3 How to install Postman
Lecture 4 A quick introduction to APIs
Lecture 5 Your first Postman request
Lecture 6 Troubleshooting Postman errors
Lecture 7 Using Postman on the web
Lecture 8 A brief overview of HTTP
Lecture 9 The Postman Landscape
Section 2: Creating REST API requests with Postman
Lecture 10 Section overview
Lecture 11 Postman collections
Lecture 12 Storing configuration in collection variables (2022)
Lecture 13 Modifying collection variables
Lecture 14 GET request
Lecture 15 Visualizing responses in Postman
Lecture 16 Query parameters
Lecture 17 Misconceptions about API parameters
Lecture 18 Assignment #1 - Query parameters
Lecture 19 Assignment #1 - Query parameters - Solution
Lecture 20 Shortcuts in Postman
Lecture 21 Path variables
Lecture 22 POST request
Lecture 23 Assignment - Check cart contents
Lecture 24 Assignment - Check cart contents - Solution
Lecture 25 JSON format explained
Lecture 26 POST request with JSON
Lecture 27 GET vs POST
Lecture 28 API Authentication
Lecture 29 Troubleshooting HTTP status codes
Lecture 30 Assignment - Place an order
Lecture 31 Assignment - Place an order - Solution
Lecture 32 Using random data in requests (random variables)
Lecture 33 Working with HTTP headers in Postman
Lecture 34 Common questions about HTTP headers
Lecture 35 Headers vs query vs params
Lecture 36 Exporting and Importing a Postman collection
Lecture 37 PATCH request method
Lecture 38 Assignment - PATCH request method
Lecture 39 Assignment - PATCH request method - Solution
Lecture 40 Using Postman variables to avoid duplication
Lecture 41 PATCH request method - continued
Lecture 42 PUT request method
Lecture 43 DELETE request method
Lecture 44 Assignment - Delete an order
Lecture 45 Assignment - Delete an order - Solution
Lecture 46 GET, POST, PUT, PATCH … What is the difference?
Lecture 47 HEAD request method
Section 3: Practice section - Building REST API requests
Lecture 48 Section overview
Lecture 49 Why learn to use real-world APIs?
Lecture 50 Troubleshooting
Lecture 51 Using the API documentation - Assignment
Lecture 52 Using API documentation - Assignment Solution
Lecture 53 Using identifiers when working with resources
Lecture 54 Assignment - Creating resources - Lists
Lecture 55 Assignment - Creating resources - Lists - Solution
Lecture 56 Assignment - Creating resources - Cards
Lecture 57 Assignment - Creating resources - Cards - Solution
Lecture 58 Assignment - Managing resources
Lecture 59 Assignment - Managing resources - Solution
Lecture 60 Assignment - Deleting resources
Lecture 61 Assignment - Deleting resources - Solution
Section 4: Writing API tests and scripts
Lecture 62 Introduction
Lecture 63 Course updates
Lecture 64 The Postman Cheat Sheet & Quick Reference Guide
Lecture 65 Your first API test in Postman
Lecture 66 Testing an API - Writing more tests
Lecture 67 Refactoring Tests
Section 5: Writing API tests and scripts using Postman variables
Lecture 68 Variables in Postman
Lecture 69 Global variables
Lecture 70 Environments
Lecture 71 Session variables (new in Postman 6.2!)
Lecture 72 Bulk editing removed new in Postman 6.2!)
Lecture 73 Pre-request scripts in Postman
Lecture 74 Understanding different variable scopes / types
Lecture 75 How to setup different URLs using environments in Postman
Lecture 76 Debugging tests
Lecture 77 Notice about the old Postman scripting API
Section 6: Advanced assertions
Lecture 78 Section overview
Lecture 79 Postman assertion basics
Lecture 80 Chai Assertion Library
Lecture 81 Assertions
Lecture 82 Assertions on arrays
Lecture 83 Assertions on nested objects
Lecture 84 How to write assertions in Postman (objects, arrays, nested properties)
Lecture 85 Testing headers and cookies
Section 7: Automatically running tests
Lecture 86 Overview
Lecture 87 Postman collection runner
Lecture 88 Postman monitors
Lecture 89 Automating with Newman (Overview)
Lecture 90 Short introduction to NodeJs and NPM
Lecture 91 Installing Newman
Lecture 92 Troubleshooting Node.js / npm / Newman Problems (for Windows)
Lecture 93 Running a collection with Newman
Lecture 94 Newman v3 to v4 Migration Guide
Lecture 95 3 ways to access your Postman collection from Newman
Lecture 96 Specifying environments with Newman
Lecture 97 Prerequisites for running Newman on Jenkins
Lecture 98 Troubleshooting Jenkins Problems (for Windows)
Lecture 99 Troubleshooting Jenkins Problems (for macOS, Linux)
Lecture 100 Running a collection with Jenkins and generating a report
Lecture 101 Creating an HTML report in Jenkins
Lecture 102 Generating better HTML reports
Lecture 103 Customizing HTML reports
Lecture 104 Troubleshooting HTML reports
Lecture 105 Running a collection from a Git repository with Jenkins
Section 8: Running Newman with other CI servers / tools
Lecture 106 Gitlab CI
Lecture 107 TeamCity
Lecture 108 Short introduction to Docker (optional)
Lecture 109 Running Jenkins with Docker
Lecture 110 Running Newman with Docker
Section 9: Workflows and Scenarios
Lecture 111 Overview
Lecture 112 Creating a basic workflow / scenario
Lecture 113 Advanced workflows
Lecture 114 Multiple workflows with the same collection
Section 10: Data driven tests: Running a request multiple times with different data sets
Lecture 115 Using workflows to create data-sets
Lecture 116 Using external data files - Basic usage
Lecture 117 Using external data files - Writing tests
Lecture 118 Using external data files - Advanced usage
Section 11: Team Collaboration
Lecture 119 Introduction
Lecture 120 Using the Git version control system - Overview
Lecture 121 Using the Git version control system - Hands on
Lecture 122 Team Workspaces - Creating and sharing a workspace
Lecture 123 Team Workspaces - Understanding users and permissions
Lecture 124 Team Workspaces - Managing user permissions
Section 12: Mock servers
Lecture 125 Introduction to mock servers
Lecture 126 Why use a mock server?
Lecture 127 Create your first mock server
Lecture 128 Practical example: using mock servers for front-end development
Lecture 129 Recording responses from an existing API
Lecture 130 Known limitations
Section 13: File uploads (testing, automatic uploads, uploading multiple files)
Lecture 131 Sending and testing multipart/form-data requests (file upload form)
Lecture 132 Automatic the upload and testing process with Newman
Section 14: Authentication / Authorization
Lecture 133 Basic access authentication
Lecture 134 OAuth2 Authorization Flow (Authorization Code Grant)
Lecture 135 Form-based / Session-based authentication
Lecture 136 JSON Web Tokens (JWT)
Section 15: Advanced topics and user questions
Lecture 137 Postman help - Schedule your free Postman consultation
Lecture 138 You ask, I answer
Lecture 139 Reusing tests in multiple requests
Lecture 140 How to deal with CSV responses?
Lecture 141 Writing files to the file system
Lecture 142 Passing variables dynamically to the request at runtime (Newman)
Lecture 143 Sending requests from scripts
Lecture 144 How can I connect to my database using Postman?
Lecture 145 JSON Schema validation in Postman
Section 16: New features in Postman
Lecture 146 Designing APIs with Postman (OpenAPI 3.0.0 / Swagger)
Lecture 147 Sending GraphQL Queries in Postman
Section 17: JavaScript fundamentals
Lecture 148 Section overview
Lecture 149 A short history of JavaScript
Lecture 150 Data Types in JavaScript
Lecture 151 Variables
Lecture 152 Conditionals
Lecture 153 Functions
Lecture 154 Data structures: arrays
Lecture 155 Data structures: objects
Lecture 156 Loops
Lecture 157 Modern JavaScript
Lecture 158 Applying what you have learned to Postman
Lecture 159 Conclusion
Section 18: Postman Developer Challenge
Lecture 160 Postman challenge webinars
Section 19: Last words
Lecture 161 Bonus Lecture
This course is targeted towards testing engineers and developers.