Book Image

Writing API Tests with Karate

By : Benjamin Bischoff
Book Image

Writing API Tests with Karate

By: Benjamin Bischoff

Overview of this book

Software in recent years is moving away from centralized systems and monoliths to smaller, scalable components that communicate with each other through APIs. Testing these communication interfaces is becoming increasingly important to ensure the security, performance, and extensibility of the software. A powerful tool to achieve safe and robust applications is Karate, an easy-to-use, and powerful software testing framework. In this book, you’ll work with different modules of karate to get tailored solutions for modern test challenges. You’ll be exploring interface testing, UI testing as well as performance testing. By the end of this book, you’ll be able to use the Karate framework in your software development lifecycle to make your APIs and applications robust and trustworthy.
Table of Contents (15 chapters)
1
Part 1:Karate Basics
7
Part 2:Advanced Karate Functionalities

Filtering tests by tags

Tags can be placed on scenarios or whole feature files to pick which ones to run, which ones not to run, or combinations of both. Tags can even be used to group scenarios regardless of which feature they reside in.

To illustrate this, we added some tags to the existing Test1.feature files like so:

Figure 4.29 – Feature 1 with tags

Figure 4.29 – Feature 1 with tags

The first scenario has a @smoke and an @important tag whereas the second one has an @ignore tag. This @ignore tag is special as these tagged tests are not run. The VS Code plugin even deactivates the CodeLens options for this scenario entirely to illustrate this.

Figure 4.30 – Feature 2 with tags

Figure 4.30 – Feature 2 with tags

The Test2.feature file’s first scenario has no tags whereas the second one also has the @smoke tag.

Running this command now from the command line picks all scenarios that have the @smoke tag:

mvn clean test -Dtest=ParallelTest#testAll
   ...