🔧Project Dependencies
This document provides an overview of the dependencies used in the project, outlining their purposes and specific versions.
1. Selenium Java (Version 4.12.1)
Purpose: Enables automation of web applications for testing purposes.
Usage: Utilized for browser manipulation and user action simulation.
Maven Repository: org.seleniumhq.selenium/selenium-java
License: Apache License 2.0
2. TestNG (Version 7.3.0)
Purpose: Serves as a testing framework designed to cover a wide range of test categories.
Usage: Used for writing and executing tests, including unit, functional, E2E, integration tests.
Maven Repository: org.testng/testng
License: Apache License 2.0
3. REST-assured (Version 5.3.0)
Purpose: Simplifies testing of REST-based services.
Usage: Used to validate and verify the responses from REST APIs.
Maven Repository: io.rest-assured/rest-assured
License: Apache License 2.0
4. OpenCSV (Version 5.7.1)
Purpose: Provides easy-to-use methods to read and write CSV files.
Usage: Used for handling CSV data within the application.
Maven Repository: com.opencsv/opencsv
License: Apache License 2.0
5. Jakarta Mail (Version 2.0.1)
Purpose: API for sending and receiving email.
Usage: Integrated for email interactions within the application.
Maven Repository: com.sun.mail/jakarta.mail
License: Eclipse Public License 2.0,EDL 1.0, EPL 2.0, GPL
6. Awaitility (Version 4.2.0)
Purpose: Provides a DSL for synchronizing asynchronous operations.
Usage: Used for handling conditions in asynchronous code.
Maven Repository: org.awaitility/awaitility
License: Apache License 2.0
7. SLF4J API (Version 2.0.6)
Purpose: Serves as a simple logging facade, allowing the actual logging implementation to be selected at deployment time.
Usage: Used for logging throughout the application.
Maven Repository: org.slf4j/slf4j-api
License: MIT License
8. SLF4J Simple (Version 2.0.6)
Purpose: Provides a simple implementation of the SLF4J API.
Usage: Enables straightforward logging without requiring additional configurations.
Maven Repository: org.slf4j/slf4j-simple
License: MIT License
9. JavaFaker (Version 1.0.2)
Purpose: Used to generate fake data for applications, useful in testing and development.
Usage: Provides a variety of data types for generating random, but realistic data.
Maven Repository: com.github.javafaker/javafaker
License: Apache License 2.0
10. Lombok (Version 1.18.26)
Purpose: Reduces boilerplate code in Java applications, like getters, setters, and constructors.
Usage: Automatically generates common methods during compile time.
Maven Repository: org.projectlombok/lombok
License: MIT License
11. Commons Lang3 (Version 3.7)
Purpose: Provides extra functionality for classes in java.lang, enhancing the Java core library.
Usage: Offers utilities for string manipulation, number creation, and date format.
Maven Repository: org.apache.commons/commons-lang3
License: Apache License 2.0
12. BeanShell (Version 2.0b6)
Purpose: Offers a dynamic Java scripting environment.
Usage: Enables execution of Java code in a scripted environment with scripting features.
Maven Repository: org.apache-extras.beanshell/bsh
License: Apache License 2.0
13. JSON-simple (Version 1.1.1)
Purpose: Provides an easy-to-use API to encode and decode JSON texts.
Usage: Used for parsing and generating JSON data efficiently.
Maven Repository: com.googlecode.json-simple/json-simple
License: Apache License 2.0
14. ExtentReports (Version 5.0.9)
Purpose: A reporting library for automation testing.
Usage: Generates interactive and detailed reports for test executions.
Maven Repository: com.aventstack/extentreports
License: Apache License 2.0
15. Jsoup (Version 1.15.4)
Purpose: Used for parsing HTML documents.
Usage: Enables extraction and manipulation of data, using the best of DOM, CSS, and jquery-like methods.
Maven Repository: org.jsoup/jsoup
License: MIT License
16. Slack API Client (Version 1.29.2)
Purpose: Provides an interface to the Slack API for Java applications.
Usage: Facilitates communication with Slack for notifications, automation, and integration within the application.
Maven Repository: com.slack.api/slack-api-client
License: Apache License 2.0
17. Jackson Databind (Version 2.16.0)
Purpose: Part of the Jackson suite, provides JSON serialization and deserialization functionality.
Usage: Converts Java objects to JSON and vice versa, essential for RESTful web services.
Maven Repository: com.fasterxml.jackson.core/jackson-databind
License: Apache License 2.0
18. YGuard (Version 4.0.0)
Purpose: A Java bytecode obfuscator and shrinker.
Usage: Protects Java applications from reverse engineering and reduces their size.
Maven Repository: com.yworks/yguard
License: MIT
19. WebDriverManager (Version 5.5.2)
Purpose: Manages the browser drivers for Selenium WebDriver.
Usage: Automates the management of driver binaries for different browsers.
Maven Repository: io.github.bonigarcia/webdrivermanager
License: Apache License 2.0
20. Maven Compiler Plugin (Version 3.10.1)
Purpose: A plugin used in Maven to compile the sources of your project.
Usage: Compiles the project's Java source files.
Maven Repository: org.apache.maven.plugins/maven-compiler-plugin
License: Apache License 2.0
21. Exec Maven Plugin (Version 3.1.0)
Purpose: Used to execute system and Java programs.
Usage: Allows the execution of Java programs and shell scripts as part of the Maven build lifecycle.
Maven Repository: org.codehaus.mojo/exec-maven-plugin
License: Apache License 2.0
22. Maven Surefire Plugin (Version 3.0.0-M4)
Purpose: Facilitates testing in a Maven project.
Usage: Used for running tests during the build lifecycle.
Maven Repository: org.apache.maven.plugins/maven-surefire-plugin
License: Apache License 2.0
Last updated
Was this helpful?