TABLE OF CONTENTS
2.2 Adding dependencies in the POM file
3. Automating API leveraging algoQA
3.2 Selecting TestStep Settings options in the Edit Scenario
1.Overview
Karate is an open-source framework for API testing that integrates API testing with BDD (Behavior Driven Development). It allows you to write tests in a readable format using Gherkin syntax.
2. Prerequisites
2.1 Installations
Install Java and Maven by following the steps described in Configuring Web Applications Using Java Selenium Framework.
2.2 Adding dependencies in the POM file
Perform the following:
- Navigate to the algoQA script generated folder structure.
- Click the POM file.
- Make sure to create a Maven Project if it has not been created earlier and add the following dependencies in the POM file:
<dependency> <groupId>com.intuit.karate</groupId> <artifactId>karate-core</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>com.intuit.karate</groupId> <artifactId>karate-apache</artifactId> <version>0.9.6</version> <scope>test</scope> </dependency> <dependency> <groupId>com.intuit.karate</groupId> <artifactId>karate-junit4</artifactId> <version>1.3.1</version> <scope>test</scope> </dependency>
3. API Test Automation leveraging algoQA
This section provides how to automate an API by leveraging algoQA platform.
3.1 Example
Consider the following examples to login, create a profile and delete a profile for a user using the following Feature names and HTTP Methods:
Feature Names | HTTP Methods to call API |
Login | POST |
Create a profile | POST |
Delete a profile | DELETE |
In this automation, configure the nodes, corresponding features, and UI elements as described in the following steps:
Perform the following:
- Navigate to the Canvas. Add node and enter 'User management' as the name.
- Add Login, Create Project and Delete Project features in Test Design.
- Click on Login feature and add the following control names and control values as shown in the following table. Ensure to select Text Box as the Control Type for all the UI elements that you are providing:Control/UI element NameControl ValuesLogin End Point url"https://algoshack.net/user/login/"Login MethodPOSTLogin HeaderContent-Type = 'application/json'Login Request body{"user":{"email":"<username>@gmail.com", "password":"encrypted format"}}. Here, replace "<username>@gmail.com" with the actual user's email ID and "encrypted format" with the actual user's encrypted password.Login Output200Login store variable
<accessToken> Here, replace with a actual variable.
Sample screenshot: - Similarly enter appropriate UI elements and Corresponding Control values for Create Project and Delete Project.
- Record a scenario using Follow Me feature and generate Test Cases. Test cases are generated in the Test cases Tab. For more information, see Profiling article. The feature file can be viewed in Test Cases.
3.2 Selecting TestStep Settings options in the Edit Scenario
Perform the following;
- Navigate to Scenarios List>>Scenario Steps List>>Edit Step Form secondary screen by clicking the Edit icon of the first GWT step arranged in the sequence, select the 'no precondition' option from the TestStep Settings dropdown list and save (Login End Point url in this case).
- For the last step, select the 'no postcondition' option (in this case- Delete_Project_output) from TestStep Settings dropdown list.
- In the Scenario Sequence section, clear the GwtInput contents if it exists for all the GWT steps.
- You can add specific comments in the Comment textbox, which is specifically used for this framework. Click the'+' icon besides Gwt Step and click on Comment on to view Comment space. Add comment and click on save.
4. Generating the scripts
Perform the following:
- Click on Generate Test Case from Test Design screen and generate scripts either from test case generation pop-up window or from test cases tab.
- Navigate to Test Cases, click on generate script and select the generated Feature File and XLS file.
Scripts generation pop-up appears from where you can view and download the scripts.
- For more information on Generating scripts, refer to Generate and Execute Scripts in the How to Automate Web Applications article.
5. Executing the scripts.
- Download the script generated to your local folder.
- Extract the contents to your local drive.
- Open the command prompt from the same folder where you have extracted the script.
- Run the following command to execute the script:
mvn test -Dkarate.options="--tags @test001
- You can view the respective report in the script generated folder, as shown:
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article