Java to obiektowy język programowania, w którym kod kompiluje się do kodu bajtowego i uruchamia na maszynie wirtualnej JVM, dzięki czemu ten sam program działa na Windowsie, macOS i Linuksie. To jeden z najczęściej wybieranych języków automatyzacji testów, z pełnym wsparciem w Selenium, Playwright, Appium i REST Assured.
Ta strona to wprowadzenie do języka Java i jednocześnie spis całego kursu Javy dla testerów na blogu Quality Island. Znajdziecie tu odpowiedź na pytanie, dlaczego tylu testerów automatyzujących pisze w Javie, dla kogo jest ten kurs, listę wszystkich lekcji w kolejności nauki, plan na pierwsze tygodnie i dwa krótkie przykłady kodu, które skompilowaliśmy w Javie 25. Pierwsza lekcja to film poniżej.
Spis treści
Czym jest język Java?
Język Java powstał w firmie Sun Microsystems, a od 2010 roku rozwija go Oracle razem ze społecznością OpenJDK. Kod źródłowy w plikach .java kompilator javac zamienia na kod bajtowy w plikach .class, a ten uruchamia maszyna wirtualna Javy (JVM). Stąd hasło „napisz raz, uruchom wszędzie”: ten sam test zbudowany na komputerze testera przejdzie na serwerze CI z Linuksem bez żadnych zmian.
Java jest językiem statycznie typowanym, co znaczy, że typ każdej zmiennej znany jest już w czasie kompilacji. Dla początkującego to czasem więcej pisania niż w Pythonie, ale w zamian kompilator wyłapuje sporą część błędów, zanim w ogóle uruchomicie testy. Nowe wersje wychodzą co pół roku, a co dwa lata jedna z nich dostaje długie wsparcie (LTS). Według mapy wsparcia Oracle Java SE z października 2026 roku Java 21 LTS ma wsparcie Premier do września 2028, a Java 25 LTS, wydana we wrześniu 2025, do września 2030. Cały kurs prowadzimy na Javie 25 LTS: instalujecie JDK 25, projekt Maven ma maven.compiler.release ustawione na 25, a testy piszecie w JUnit 6. Jeśli projekt w Waszej firmie stoi jeszcze na Javie 21, większość kodu z lekcji zadziała i tam, a miejsca, które wymagają Javy 25, zawsze oznaczamy.
Java w liczbach, październik 2026
4.
miejsce Javy w indeksie TIOBE, wrzesień 2026
29,4%
programistów używa Javy, Stack Overflow 2025
34,9%
ofert z kategorii Testing w Just Join IT wymaga Javy
2030
do września wsparcie Premier dla Javy 25 LTS
Źródła: TIOBE Index, wrzesień 2026; Stack Overflow Developer Survey 2025; analiza Quality Island 384 ofert z kategorii Testing w Just Join IT, 10.10.2026; Oracle Java SE Support Roadmap, stan na 10.10.2026.
Dlaczego testerzy automatyzujący wybierają Javę?
Bo Java jest tam, gdzie są oferty pracy i duże systemy do testowania. Według analizy Quality Island 384 ofert z kategorii Testing w serwisie Just Join IT z 10.10.2026 Java była wymagana w 134 ofertach, czyli 34,9 procent, częściej niż Python (27,9 procent). W globalnej ankiecie Stack Overflow Developer Survey 2025 Javy używa 29,4 procent respondentów, a w indeksie TIOBE z września 2026 roku Java zajmuje 4. miejsce z udziałem 7,54 procent. Pełne porównanie z Pythonem, TypeScriptem i C# znajdziecie w tekście jaki język programowania wybrać do automatyzacji testów.
Drugi powód to narzędzia. Wszystkie najważniejsze biblioteki testowe mają oficjalne wsparcie dla Javy, więc raz nauczony język wystarcza do testów UI, mobilnych i API.
Źródło: dokumentacja Selenium, Playwright for Java, Appium Clients i REST Assured, odczyt 10.10.2026.
Trzeci powód jest mniej oczywisty: w wielu firmach backend jest napisany w Javie. Tester, który czyta kod aplikacji w tym samym języku, w którym pisze testy, szybciej znajduje przyczynę błędu i lepiej dogaduje się z programistami. Z naszego doświadczenia przy wdrożeniach automatyzacji w bankach i dużych firmach ten argument pada przy wyborze Javy bardzo często, a w Quality Island napisaliśmy już ponad 450 000 testów automatycznych.
Dla kogo jest ten kurs Javy?
Kurs jest dla Was, jeśli testujecie manualnie i chcecie wejść w automatyzację, jeśli zaczynacie programowanie od zera albo jeśli znacie inny język i chcecie szybko przejść na Javę. Nie zakładamy żadnej wiedzy wstępnej poza obsługą komputera. Każda lekcja ma film i wersję tekstową z kodem, który możecie skopiować, a większość ma też „kąt testera”, czyli pokazuje, gdzie dany temat spotkacie w testach automatycznych.
Trzy typowe punkty startu
Tester manualny
Przerabiacie lekcje po kolei, od instalacji środowiska. Po lekcjach 14 do 18 możecie przejść do Selenium.
Początkujący w IT
Zacznijcie od tego wprowadzenia i planu nauki niżej. Nie przeskakujcie lekcji o typach i operatorach.
Znacie inny język
Przejrzyjcie lekcje 2 do 13 pod kątem różnic, a czas poświęćcie na programowanie obiektowe od lekcji 14.
Spis lekcji kursu Javy dla testerów
Lekcje ułożyliśmy w kolejności, w jakiej warto je przerabiać. Każda ma osobny adres, a na końcu każdej jest nawigacja do poprzedniej i następnej. Numer kroku w tabeli to numer lekcji: tak samo numerujemy lekcje w nawigacji „poprzednia” i „następna” na końcu każdej z nich. Jedyny wyjątek to adres lekcji o instrukcji if, który zachował numer 10 ze starszej numeracji filmów; w kursie to lekcja 9, a pętle są lekcją 10.
Źródło: kurs Javy dla testerów na blogu Quality Island; każdy adres sprawdzony 10.10.2026, odpowiada kodem 200.
Po lekcji 18 macie komplet podstaw do pisania testów. Naturalne następne kroki to selektory w Selenium, opisane w tekście lokalizowanie elementów: selektory w Selenium, oraz wzorce, w których przydaje się całe programowanie obiektowe, zebrane w artykule o wzorcach projektowych w automatyzacji testów Selenium WebDriver.
Jak wygląda pierwszy kod w Javie i pierwszy test?
Najprostszy program w Javie to klasa z metodą main. Poniżej wersja dla testera: porównuje komunikat oczekiwany z rzeczywistym i wypisuje PASS albo FAIL. To jeszcze nie jest test automatyczny, ale dokładnie taka logika siedzi w środku każdej asercji. Pełne omówienie kompilacji i uruchamiania jest w lekcji pierwszy program w Javie.
WitajTesterze.java, Java 25, wynik w komentarzu
public class WitajTesterze {
public static void main(String[] args) {
String oczekiwany = "Zamówienie przyjęte";
String rzeczywisty = "Zamówienie przyjęte";
if (oczekiwany.equals(rzeczywisty)) {
System.out.println("PASS: komunikat się zgadza");
} else {
System.out.println("FAIL: oczekiwano \"" + oczekiwany + "\", jest \"" + rzeczywisty + "\"");
}
}
}
// PASS: komunikat się zgadza
A tak wygląda prawdziwy test jednostkowy w JUnit, frameworku, którego będziecie używać najczęściej. Klasa Rabat liczy cenę po rabacie i odrzuca rabat spoza zakresu od 0 do 100 procent, a dwa testy sprawdzają zwykły przypadek i wartość niepoprawną. Oba przeszły w JUnit 6.1.3.
Rabat.java
public class Rabat {
public static int cenaPoRabacie(int cena, int procent) {
if (procent < 0 || procent > 100) {
throw new IllegalArgumentException("Rabat poza zakresem: " + procent);
}
return cena - cena * procent / 100;
}
}
RabatTest.java, JUnit 6.1.3, oba testy zaliczone
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
import org.junit.jupiter.api.Test;
class RabatTest {
@Test
void rabatDwadziesciaProcent() {
assertEquals(800, Rabat.cenaPoRabacie(1000, 20));
}
@Test
void rabatPonadStoProcentJestOdrzucany() {
assertThrows(IllegalArgumentException.class, () -> Rabat.cenaPoRabacie(1000, 120));
}
}
Na tym etapie nie musicie rozumieć każdej linijki. Słowa class, static, if, throw i @Test wyjaśniamy po kolei w lekcjach z tabeli wyżej, a po lekcji 16 przeczytacie ten kod bez zastanowienia.
Wbrew pozorom
Klasa i public static void main przestały być obowiązkowe. Według dokumentu OpenJDK JEP 512 od Javy 25 pierwszy program może mieć jedną linijkę w metodzie void main(): IO.println("Witajcie w kursie Javy");. Sprawdziliśmy to w Javie 25 i działa, ale ten sam plik skompilowany z opcją --release 21 kończy się błędem implicitly declared classes are not supported in -source 21. Kurs prowadzimy na Javie 25, ale w przykładach trzymamy się klasycznej klasy z main, bo tak wyglądają projekty testowe w firmach, a testy JUnit i tak żyją w klasach. Zwarty zapis pokazujemy w lekcji o pierwszym programie.
Plan nauki: w jakiej kolejności przerabiać lekcje?
Najczęstszy błąd, który widzimy u osób, które szkolimy, to przeskakiwanie od razu do Selenium po dwóch lekcjach składni. Działa to przez tydzień, a potem każdy błąd kompilacji zatrzymuje pracę na godzinę. Lepszy jest plan w czterech etapach, w którym każdy etap kończy się małym projektem.
Źródło: plan opracowany przez trenerów Quality Island na podstawie kursu; czas jest orientacyjny i zależy od doświadczenia.
Jeśli po etapie 2 macie wrażenie, że Java każe Wam pisać za dużo, to znak, że wszystko idzie zgodnie z planem. Rozpisany tydzień po tygodniu wariant tego planu, z pierwszymi testami w Selenium, znajdziecie w tekście Java dla testerów automatyzujących: plan nauki na 8 tygodni. Jeśli wolicie uczyć się z książki, sprawdźcie nasze zestawienie książek do nauki Javy z datami polskich wydań. Kiedy opanujecie składnię, kolejnym krokiem jest programowanie obiektowe: czym różni się klasa od obiektu i jak wykorzystać to we wzorcu Page Object, pokazujemy w lekcji programowanie obiektowe w Javie: klasy i obiekty.
Czego potrzebujecie, żeby zacząć?
Do całego kursu wystarczą trzy rzeczy, wszystkie bezpłatne. Pierwsza to JDK, czyli zestaw do kompilowania i uruchamiania Javy, na przykład z projektu Eclipse Adoptium albo bezpośrednio od Oracle. Druga to edytor: w kursie używamy IntelliJ IDEA, którego darmowa wersja w zupełności wystarcza. Trzecia to godzina dziennie i cierpliwość do komunikatów kompilatora, które na początku wyglądają groźniej, niż są. Instalację krok po kroku opisuje lekcja instalacja środowiska, a pierwszy projekt w IDE lekcja IntelliJ IDEA: pierwszy projekt.
Jeśli chcecie zobaczyć, jak Java pracuje w prawdziwych projektach testowych, posłuchajcie praktyków na Testing Ground Conference, największym dwudniowym wydarzeniu z obszaru jakości oprogramowania w Polsce, którego edycja 2027 odbędzie się w maju w Warszawie. Dyskusję o tym, czy Selenium w Javie wciąż ma sens, prowadzi też Strefa QA w tekście o Selenium w 2026 roku.
Wolicie uczyć się z trenerem? Ten temat przerabiamy w praktyce na szkoleniu wprowadzenie do programowania od podstaw w Javie. Osobom, które chcą od razu pisać testy, polecamy programowanie w Javie dla testerów, a po nim programowanie obiektowe w Javie i automatyzację testów w Selenium. Trenerzy Quality Island mają minimum 5 lat doświadczenia w projektach, a przez nasze szkolenia przeszło już ponad 2 500 specjalistów.
Co zabrać z tego artykułu
01Java kompiluje się do kodu bajtowego i działa na JVM, więc ten sam test przejdzie na komputerze testera i na serwerze CI.
02Według analizy 384 ofert z Just Join IT z 10.10.2026 Java pojawia się w 34,9 procent ofert z kategorii Testing, częściej niż Python (27,9 procent).
03Selenium, Playwright, Appium, REST Assured, JUnit i TestNG mają pełne wsparcie dla Javy.
04Kurs ma 18 kroków: od instalacji JDK do dziedziczenia, BaseTest i BasePage. Przerabiajcie je po kolei.
05Plan w czterech etapach, z małym projektem na koniec każdego, działa lepiej niż skok do Selenium po dwóch lekcjach.
Chcecie przejść kurs szybciej, z trenerem, który sprawdza Wasz kod? Na szkoleniu od podstaw piszecie w Javie od pierwszego dnia.
Powiązane na blogu Quality Island
- Java dla testerów automatyzujących: plan nauki na 8 tygodni
- Jaki język programowania wybrać do automatyzacji testów?
- Książki do nauki Javy
- Operatory logiczne w Javie
- Dziedziczenie w Javie
Pełna lista źródeł
- TIOBE, TIOBE Index, wrzesień 2026. Java na 4. miejscu z udziałem 7,54 procent, odczyt 10.10.2026.
- Stack Overflow, Developer Survey 2025: Technology, 2025. Java: 29,4 procent wszystkich respondentów.
- Just Join IT, oferty pracy w kategorii Testing; analiza Quality Island 384 ofert, 10.10.2026: Java w 134 ofertach (34,9 procent), Python w 107 (27,9 procent).
- Oracle, Oracle Java SE Support Roadmap, stan na 10.10.2026. Java 21 LTS: wsparcie Premier do września 2028; Java 25 LTS: do września 2030.
- OpenJDK, JEP 512: Compact Source Files and Instance Main Methods, 2025, Java 25.
- Selenium, Install a Selenium library, dokumentacja 2026.
- Microsoft, Playwright for Java: Installation, dokumentacja 2026.
- Appium, Appium Clients, dokumentacja 2026.
- REST Assured, strona projektu, odczyt 10.10.2026.
- Eclipse Foundation, Eclipse Adoptium, dystrybucje JDK, odczyt 10.10.2026.
- Dane własne Quality Island, 2026: ponad 450 000 napisanych testów automatycznych, ponad 2 500 przeszkolonych specjalistów, trenerzy z minimum 5 latami doświadczenia w projektach.



