This project is about User Management Functionality - Backend. This project was developed with the following tools:
- Spring Boot
- Mysql
- JPA
- Swagger
- Spring Boot Mail
- Lombok
- Maven
- Swagger
- Java
- SonarQube
- Add SonarQube dependency in the pom.xml
<properties>
<java.version>17</java.version>
<sonar.host.url>sonar_ip_address</sonar.host.url>
<sonar.login>sonar_user</sonar.login>
<sonar.password>sonar_password</sonar.password>
</properties>
- Install and create SonarQube account.
- Type next command to create war file and connect to sonar
mvn clean package
mvn sonar:sonar
Jmeter is an open source software and help to test how our application will respond to different work loads.
Jmeter Setup:
- Download Jmeter Software from:
- Extract Jmeter zip file:
- After extracting the zip. Go to apache-jmeter-5.5/bin folder and double click on "jmeter.bat" file (It will open Jmeter Tool).
-
Right click on Test Plan:
-> Add Threads -> Add Thread Group
-> Add thread / user count (in this 100 case)
-
Right click on Thread Group:
-> Add Sampler -> Http Request
Fill out:
Name: HTTP GET Request
Server Name or IP: localhost
Port Number: 8080
HTTP Request: GET
Path: /users
-
Right click on Thread Group (For Listeners)
-> Listner -> Summary Report
- Save test and run test
- Run the project
- Create the test plan in GUI mode (above steps) and run test in CLI mode
- Open Command Prompt or other Command Line and go to the folder apache-jmeter-5.5/bin and type the following command:
jmeter -n -t SummaryReport.jmx -l test-results.jtl
Note:
SummaryReport.jmx = Name of report saved in GUI
test-results.jtl = name of the new report
New users will fill out the form below to create an account. After registration success, a random password will be sent to the user email in order to activate the account. User account will be inactive status.
User will enter the random password that was sent in the step above and will enter new password and confirmation password to unlock the account. Status of the account will change to "Active".
This screen will display all users registered in the application. All users will have the following actions: Edit, Delete and Activate or Inactivate account.
If user account is activated, so application will allow to the user to login using email and password.
This screen will recover the user password. If the user enter valid email, so the application will send the current password by email.