Ovaj projekt predstavlja okvir (framework) za automatsko testiranje programske podrške, izrađen u programskom jeziku Java koristeći Selenium WebDriver, TestNG, REST Assured i Maven.
Framework omogućuje:
- automatsko testiranje web aplikacija
- cross-browser testiranje (Chrome & Firefox)
- paralelno izvođenje testova
- API testiranje
- integraciju s CI poslužiteljem (GitHub Actions)
- Java 17
- Maven
- Selenium WebDriver 4
- TestNG
- WebDriverManager
- REST Assured
- GitHub
- GitHub Actions (CI)
zavrsniProjekt/
├── .github/
│ └── workflows/
│ └── ci.yml
├── .idea/
├── src/
│ └── main/
| └── test/
│ └── java/
│ ├── base/
│ │ └── BaseTest.java
│ ├── pages/
│ │ ├── FileUploadPage.java
│ │ └── LoginPage.java
│ ├── resources/
│ │ └── testFile.txt
│ └── tests/
│ ├── ApiStatusTest.java
│ ├── DynamicLoadingTest.java
│ ├── FileUploadTest.java
│ └── LoginTests.java
├── target/
├── .gitignore
├── pom.xml
└── testng.xml
- Page Object Model (POM)
- Explicit Wait (WebDriverWait & ExpectedConditions)
- Cross-browser testing (Chrome & Firefox)
- Paralelno izvođenje testova (TestNG)
- WebDriverManager (automatsko upravljanje driverima)
- API testiranje (REST Assured)
- CI integracija (GitHub Actions)
- OOP principi
- Maven build management
- .gitignore konfiguracija
- Validan login
- Neispravna lozinka
- Neispravno korisničko ime
- Prazni podaci
- Provjera redirekcije nakon uspješne prijave
- Učitavanje datoteke i provjera imena
- Čekanje učitavanja sadržaja pomoću explicit wait-a
- Provjera statusnog koda
- Validacija odgovora API-ja
Cross-browser testiranje implementirano je pomoću TestNG parametara i omogućuje paralelno izvođenje testova u:
- Google Chrome
- Mozilla Firefox
Konfiguracija se nalazi u testng.xml datoteci.
- Instaliran Java 17
- Instaliran Maven
- Internet konekcija (za WebDriverManager)
mvn clean test