Skip to content

MilanMax/backend-challenge-tests

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QA Challenge Tests - README

Tehnologije i alati:

  • Java 17
  • Maven 3.9+
  • JUnit 5, Rest-Assured, Allure
  • Gatling Java

Struktura projekta

Struktura projekta

src/test/java/backend/
  api/
    UserSmokePositiveTests.java
    UserSmokeNegativeTests.java
    CalendarSmokePositiveTests.java
    CalendarSmokeNegativeTests.java
    ProviderSmokePositiveTests.java
    ProviderSmokeNegativeTests.java

  helpers/
  models/
  performance/
    UserLoadSimulation.java
    PerformanceCleanup.java

  BaseTest.java

Pokretanje funkcionalnih testova:

mvn clean test; mvn allure:serve

Pokretanje Gatling testova:

mvn clean test-compile gatling:test

Performance Scenario

Kreira stotine korisnika kroz više pristupa (ramp-up, konstantan load i peak opterećenje). Svi korisnici koriste jedan hard-kodovani masterCalendarId. Nakon završetka kreiranja, pokreće se automatski cleanup (PerformanceCleanup) koji briše sve korisnike. Rezultati se nalaze u: target/gatling/-/index.html

Allure izveštaji:

Uz komandu mvn clean test; mvn allure:serve stranica sa rezultatima se odmah prikazuje u browseru Rezultati: target/allure-results/ i target/site/allure-maven-plugin/ Ima par palih testova kojI daju status code 500 umesto 400 ili 404, mozemo diskutovati na razgovoru. Tokom kreiranja korisnika sa nevalidnim payload-om (name dužine veće od dozvoljene)** i sa kalendarom,** API vraća HTTP 500 Bad Request. Međutim, nakon tog neuspešnog pokušaja i posle cleanUp-a, u bazi svc-calendar ostaje zapis u tabeli user_calendars koji se odnosi na nepostojećeg korisnika.

Napomene:

  • JAVA_HOME i MAVEN_HOME ne smeju sadržati whitespace (razmake u putanji)
  • Cleanup za performance testove se pokreće automatski nakon Gatling testa, zapravo je deo scenarija koji čeka 100 sekundi kako bi Create User scenario bio gotov.
  • Cleanup za functional testove se izvrsava u AfterAll metodi u BaseTest klasi (za usere i kalendare), kao i u ostalim AfterAll/AfterEach metodama (za meetinge i evente)

PROBLEM SA WHITESPACE-OM

Greške tipa: System property (jdk.java.options, ... ) has a value that contains a whitespace and can't be propagated on Windows ili ForkException – Gatling failed

Uzrok:

Putanja JAVA_HOME ili MAVEN_HOME pokazuje na folder sa razmakom, npr.: C:\Program Files\Java\jdk-17

Rešenje:

  1. Premestanje JDK u folder bez razmaka, npr.: C:\test\java\jdk-17

Autor: Milan Maksimović Senior Test Automation Engineer

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published