This course introduces you to REST Assured, a powerful Java library for automating REST API testing. Beginning with the fundamentals, you'll learn what APIs are, the differences between REST and SOAP, and how to interact with APIs using HTTP methods. The course then dives into the essentials of REST Assured setup and key API testing methods like GET, POST, PUT, and DELETE. You'll also explore how to validate JSON and XML responses and work with status codes.
As you advance through the course, you'll gain hands-on experience in handling request parameters, headers, and cookies. A dedicated section on authentication covers techniques like OAuth and basic auth, ensuring that you're equipped to work with secure APIs. Moreover, you’ll learn how to validate JSON and XML schemas, ensuring your APIs meet specific structural requirements.
In the final part, the course expands into API mocking using WireMock, teaching you how to virtualize web services and run tests without relying on live environments. By the end, you'll be well-versed in both REST Assured and testing best practices, ready to apply your knowledge to real-world projects.
This course is designed for the QE automation engineer, Selenium WebDriver automation aspirant, manual testing professional willing to jumpstart their automation career, and QTP/UFT professional wanting to switch to API automation as per testing market demand. Basic knowledge of Core Java is required for quick understanding.
Overview
Syllabus
- Basics Concepts of APIs
- In this module, we will cover the foundational concepts of APIs, including what they are, how they work, and key aspects such as HTTP methods, status codes, and the differences between REST and SOAP. We'll also introduce essential tools like Postman and JSON, preparing you for hands-on API automation.
- Getting Started with REST Assured
- In this module, we will guide you through the initial setup of REST Assured and help you perform simple API requests. You’ll learn how to validate responses, extract data, and handle status codes, laying the groundwork for API automation.
- POST, PUT, and DELETE
- In this module, we will explore the key HTTP methods—POST, PUT, and DELETE. You’ll learn how to send data to APIs, update existing records, and delete data, gaining practical experience with REST Assured in manipulating resources.
- REST Assured Logging
- In this module, we will focus on logging in REST Assured. You’ll learn how to log various components like request bodies, headers, cookies, and status codes, which will help in debugging and improving the transparency of your API tests.
- Handling Request Parameters
- In this module, we will cover how to handle different types of parameters in REST Assured. You’ll learn to use query and path parameters effectively, along with managing multiple and multi-value parameters to ensure flexibility in your API automation.
- Working with Headers and Cookies
- In this module, we will explore how to work with headers and cookies in REST Assured. You’ll gain skills in sending and validating these components, ensuring secure and effective communication between your tests and APIs.
- Authentication
- In this module, we will dive into API authentication methods. From basic and digest authentication to OAuth, you’ll learn how to secure your API interactions and integrate with services requiring advanced authentication.
- XML and JSON Schema Validation
- In this module, we will focus on schema validation for both JSON and XML responses. You’ll learn how to ensure API data integrity and consistency by validating responses against predefined schemas using REST Assured.
- WireMock: WebService Virtualization
- In this module, we will introduce you to WireMock for API virtualization. You’ll learn to mock API endpoints, create stubs, and run mock servers, enabling efficient and isolated testing of APIs without relying on live systems.
- Miscellaneous Operations
- In this module, we will cover various advanced features in REST Assured, including configuring defaults, validating response time, and using response-aware matchers. These tools will enhance the flexibility and efficiency of your API automation testing.
Taught by
Packt - Course Instructors