19 najpopularniejszych pytań i odpowiedzi do rozmów kwalifikacyjnych TestNG (2025)
Oto pytania i odpowiedzi do rozmów kwalifikacyjnych TestNG zarówno dla nowicjuszy, jak i doświadczonych kandydatów, którzy chcą zdobyć wymarzoną pracę.
1) Co to jest TestNG?
TestNG to zautomatyzowana platforma testowa typu open source. Opiera się na frameworku JUnit, ale nie jest rozszerzeniem JUnit.
Bezpłatne pobieranie w formacie PDF: Pytania do wywiadu TestNG
2) Jakie są funkcje TestNG?
Funkcje TestNG obejmują
- TestNG wykorzystuje więcej funkcji OO (obiektowych) i Java
- Obsługuje testowanie klas zintegrowanych
- Obsługiwane są różne adnotacje
- Oddziel kod testowy czasu kompilacji od informacji o danych/konfiguracji czasu wykonywania
- Konfiguracja w czasie wykonywania jest elastyczna
- Elastyczna wtyczka API
- Dla większej elastyczności osadza BeanShell
- Obsługa wielowątkowego testowania selenu
- Obsługuje testy równoległe, testy obciążenia, częściowe awarie, zależne metody testowania
- Po skompilowaniu testu można zwrócić się do TestNG o wykonanie wszystkich testów „frontendowych” lub „wolnych”, „szybkich”, „baz danych”,
- Dla tej samej klasy testowej obsługa TestNG dla wielu instancji
- Do rejestrowania brak zależności, domyślne funkcje JDK do rejestrowania i środowiska wykonawczego
3) Wymień zalety TestNG w porównaniu z Junitem?
Zalety TestNG w porównaniu z JUnit obejmują
- W porównaniu z adnotacjami JUnit, TestNG są łatwe do zrozumienia
- W przeciwieństwie do JUnit, TestNG nie wymaga deklarowania klas @Before i @After Class
- W TestNG nie ma ograniczenia nazwy metody
- TestNG umożliwia łatwe grupowanie przypadków testowych, co nie jest możliwe w JUnit
- TestNG obsługuje trzy dodatkowe konfiguracje: @Before/After Suite, @Before/After Test i @Before/After Group
- TestNG nie musi rozszerzać żadnej klasy
- W TestNG możliwe jest równoległe uruchamianie testów sterowników sieciowych Selenium
- Bazując na grupie TestNG pozwala na wykonanie przypadków testowych
- TestNG umożliwia określenie zależnych przypadków testowych; każdy przypadek testowy jest niezależny od innego przypadku testowego
4) Jakie są podstawowe kroki wymagane przy pisaniu testów TestNG?
Podstawowe kroki wymagane przy pisaniu TestNG obejmują
- Zapisz logikę biznesową testu i wstaw adnotacje TestNG do swojego kodu
- W kompilacji.xml lub testowanie.xml, dodaj informacje o teście
- Uruchom TestNG
5) Wymień różne sposoby wywołania TestNG.
TestNG można wywołać na różne sposoby, np
- Korzystanie z Zaćmienie
- Z mrówką
- Z wiersza poleceń
- Korzystanie z IDEA IntelliJ
6) Wyjaśnij zastosowanie pliku testng.xml
Plik testowanie.xml rejestruje całe badanie w formacie XML. Plik ten ułatwia zdefiniowanie całego zestawu testów i ich parametrów w jednym pliku, który możesz zweryfikować w swoim repozytorium kodu lub wysłać e-mailem do współpracowników. Ułatwia także wyciąganie podzbiorów testów lub dzielenie kilku konfiguracji środowiska wykonawczego.
7) Jak w TestNG można wyłączyć test?
Aby wyłączyć przypadek testowy, którego nie chcesz, możesz użyć adnotacji @Test(enabled = false).
8) Co to jest test limitu czasu w TestNG?
Test Time-Out w TestNG to nic innego jak czas przeznaczony na wykonanie testów jednostkowych. Jeżeli test jednostkowy nie zakończy się w określonym terminie, TestNG porzuci dalsze testowanie oprogramowania i oznaczy je jako niepowodzenie.
9) Wyjaśnij test wyjątku
TestNG daje opcję śledzenia obsługi wyjątków w kodzie. Możesz sprawdzić, czy kod generuje oczekiwane wyniki, czy nie. Oczekiwany parametr wyjątków jest dostępny wraz z adnotacją @Test.
10) Co robi „test zestawu” w TestNG?
„Test pakietu” jest wykonywany, gdy trzeba przeprowadzić kilka testów jednostkowych razem, „Test pakietu” łączy ten test jednostkowy razem. Do uruchomienia testu zestawu używany jest plik XML.
11) Co to jest testowanie parametryczne?
Testowanie parametryczne pozwala programistom na wielokrotne wykonywanie tego samego testu przy użyciu różnych wartości. Na dwa różne sposoby TestNG umożliwia przekazywanie parametrów bezpośrednio do metod testowych.
- Z testowaniem.xml
- Z dostawcami danych
12) Jak uruchomić testy JUnit za pomocą TestNG?
Możesz uruchomić testy JUnit za pomocą TestNG by
- Umieszczenie biblioteki JUnit w ścieżce klas TestNG, aby mogła lokalizować i używać klas JUnit
- Zmień program uruchamiający test z JUnit na TestNG w Ant, a następnie uruchom TestNG w „trybie mieszanym”. Spowoduje to, że cały test będzie taki sam
Takie podejście umożliwia również konwersję istniejącego testu JUnit na TestNG.
13) Co wskazuje @Test(invocationCount=?) i (threadPoolSize=?)?
- @Test (threadPoolSize=?): Atrybuty threadPoolSize informują TestNG o utworzeniu puli wątków w celu uruchomienia metody testowej przez wiele wątków. Dzięki puli wątków czas działania metody testowej znacznie się skraca.
- @Test(inwokacjaCount=?): Liczba wywołań informuje, ile razy TestNG powinien uruchamiać tę metodę testową
14) Jakie są różne sposoby tworzenia raportów z wynikami TestNG?
Istnieją dwa sposoby tworzenia raportów za pomocą Test NG
- Słuchacze: Aby klasa słuchacza mogła zostać zaimplementowana, klasa musi implementować interfejs org.testng./TestListener. Klasy te są informowane w czasie wykonywania przez TestNG o rozpoczęciu, zakończeniu testu, pominięciu, zaliczeniu lub niepowodzeniu.
- Reporterzy: Aby klasa raportująca mogła zostać zaimplementowana, klasa musi implementować interfejs org.testng/Reporter. Kiedy kończy się cały zestaw, klasy te są wywoływane. Po wywołaniu do tej klasy dostarczany jest obiekt składający się z informacji o całym przebiegu testu.
15) Czym jest test grupowy w TestNG?
Jest to nowa funkcja zawarta w TestNG; pozwala na rozłożenie metod na odpowiednie porcje i dokonanie grupowania metod testowych. Dzięki testowi grupowemu możesz nie tylko zadeklarować metody należące do grup, ale możesz także określić grupy testowe zawierające inne grupy. Grupy są określane w pliku testowania.xml za pomocą testu grupowego.
16) Jakie są sposoby, aby TestNG umożliwiał określenie zależności?
TestNG pozwala określić zależności na dwa sposoby
- Używanie atrybutów zależnośćOnMethods w adnotacjach @Test
- Używanie atrybutów zależnośćOnGroups w adnotacjach @Test
17) Co to znaczy, że w TestNG musisz przekazać parametry za pomocą dostawców danych?
Jeśli trzeba przekazać złożony parametr lub parametry, które mają zostać utworzone w języku Java, w takim przypadku parametry można przekazać za pomocą dostawców danych. Adnotacja dostawcy danych to @DataProvider. Ta adnotacja ma tylko jeden atrybut ciągu, jeśli nazwa nie jest zadeklarowana; nazwa dostawcy danych automatycznie przyjmuje nazwę metody. Dostawca danych zwraca an szyk obiektów.
18) Wymień różne metody wykonywania testów w TestNG?
Testy w TestNG wykonywane są przy użyciu klasy TestNG. W przypadku uruchamiania testów w środowisku testowym TestNG głównym punktem wejścia jest klasa. Użytkownicy mogą utworzyć obiekt TestNG i wywołać go na wiele różnych sposobów, np
- Na już istniejącym pliku testowym.xml
- Na syntetycznym pliku testowym.xml stworzonym w całości z Javy
- Poprzez bezpośrednie ustawienie klas testowych
19) Podaj przykładowy kod TestNG
package firsttestngpackage; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.*; public class firsttestngfile { public String baseUrl = "http://demo.guru99.com/test/newtours/"; String driverPath = "C:\\geckodriver.exe"; public WebDriver driver ; @Test public void verifyHomepageTitle() { System.out.println("launching firefox browser"); System.setProperty("webdriver.firefox.marionette", driverPath); driver = new FirefoxDriver(); driver.get(baseUrl); String expectedTitle = "Welcome: Mercury Tours"; String actualTitle = driver.getTitle(); Assert.assertEquals(actualTitle, expectedTitle); driver.close(); } }
Te pytania podczas rozmowy kwalifikacyjnej pomogą również w Twoim życiu (ustach)
Dobry do przygotowywania się do rozmów kwalifikacyjnych
W pytaniu nr 6 napisałeś testing.xml zamiast testng.xml
Dziękuję… to zostało poprawione
Pierwsza linia trzeciego pytania powinna brzmieć „Zalety TestNG w porównaniu z JUnit”.
Dziękuję za pytania.
Błąd naprawiony!
11) Co to jest testowanie parametryczne? Powinno brzmieć: Co to jest testowanie parametryczne?
Cześć, dzięki, że napisałeś. Jest sprawdzany i aktualizowany.