
The syllabus guides you through setting up the framework, leveraging reusable methods and specifications, building data-driven tests with out-of-the-box features, grouping tests with tags, and integrating GitHub and continuous integration.
Install and configure Java on macOS by downloading the JDK, installing, and verifying with java -version, then set JAVA_HOME in your profile and confirm in a terminal.
learn how to install maven on macOS by downloading the binary, extracting the zip, and configuring environment variables and the path in the terminal, then verify the installation.
Download the latest Eclipse package, unzip it, move the Eclipse application to the Applications folder, and launch to set a workspace and explore the welcome screen and tutorials.
Learn how to download and install the Java Development Kit on Windows, set JAVA_HOME and PATH, and verify the setup with java -version.
Install and configure Maven on Windows by downloading the Apache Maven binaries, extracting the zip, creating the Maven home environment variable, updating the path, and verifying with mvn -version.
Learn how to install Eclipse on Windows, choose the Eclipse IDE for Java developers, download the Neon release, extract the zip, and launch the application.
Download and unzip the student sample app, ensure Java is installed, start the app from the desktop, and verify it on localhost port 880 (or 885) by listing students.
Launch the student app by pulling its Docker image from Docker Hub, then run the container with port mapping and access the app in your browser using the exposed port.
Explore Serenity BDD, an open-source test automation framework that streamlines UI automation with Selenium and WebDriver, provides data-driven, parallel tests, rich reports, and easy integration with Rest Assured.
Set up a Serenity BDD project in Eclipse and configure the pom.xml with REST Assured dependencies and Maven plugins (Failsafe, Surefire) to run integration tests and generate aggregated reports.
Build a project skeleton by creating packages for the student app, tests, cucumber, serenity, steps, student, and utils, plus feature and test data folders and a sorority.properties file.
Learn to write the first rest assured test using Junod, and build the project with Maven. Generate and view beautiful Serenity reports that include API requests, responses, and test results.
Learn to generate and interpret Serenity BDD test reports by handling pass, fail, pending, ignored, skipped, error, compromised, and manual outcomes, and configure Serenity properties for the project name.
Learn to organize tests with a folder-based feature and story hierarchy, group test classes into features, and apply title annotations for human-readable test titles and clear reports.
Explore REST API automation with REST Assured and Serenity BDD to create, verify, update, and delete a student using POST and DELETE requests, leveraging @Title annotations for meaningful names.
Demonstrate prioritizing JUnit tests for REST API actions: create, get, update, delete, using fixed metadata with Serenity, and extracting data from responses to verify status.
Highlight the drawback of duplicating rest-assured logic in JUnit tests, showing repeated create, update, read, and delete tests and the need for reusable test methods.
Refactor and build reusable step-based methods for create, get, update, and delete student operations using the Serenity framework, enhancing test reports with detailed, parameterized step descriptions.
Learn to build more reusable methods for a student API using REST Assured and Serenity BDD, updating, verifying, and deleting student data with reusable steps and reports.
Learn to create reusable request and response specifications for rest api tests in Rest Assured and serenity bdd, including a json content type, chunked transfer encoding, and test-wide reuse.
In the 21st century, almost all web applications use web services to communicate or interact with each other. Most modern day web services are built on Representational state transfer (REST) architecture; REST has gained a lot of popularity and it will continue to do the same due to its simplicity in comparison with other technologies.
It is very important for software QA engineers, automation engineers and software developers to understand the importance of Web Services testing and more importantly how to automate these tests. Automating Application Program Interface (API) tests is critical and crucial for most projects due to the fact that API tests are far more stable, reliable and fast.
To achieve this goal, using a Solid Robust Framework is very much necessary.
Serenity BDD is an open source test automation framework which comes integrated with many popular libraries like Selenium, JUNIT, JBehave, Cucumber BDD, Rest-Assured which can be used to build a powerful API Automation framework.
We will be focusing on the important topics listed below:
At the end of this course you will be able to build a robust API test automation framework using Serenity BDD & Rest-Assured combined with GIT & JENKINS