Wprowadzenie do adnotacji JUnit

JUnit to jedna z najpotężniejszych platform testowych opartych na Javie i open source dostępnych bezpłatnie na rynku. Pomaga w łatwym i szybkim tworzeniu przypadków testowych oraz wykonywaniu przypadków testowych zgodnie z wymaganiami za pomocą adnotacji. Adnotacje w zasadzie dostarczają dodatkowych informacji o klasach i metodach używanych w kodzie Java. Pomaga w przeprowadzaniu testów każdego elementu jednostki, czy to metod, klas, pakietów i zmiennych. Jest powszechnie używany do testowania jednostkowego aplikacji. Najnowsza aktualizacja JUnit to JUnit5. Obsługuje sterownik sieci Selenium do testowania automatyzacji aplikacji internetowych i mobilnych. org. Junit to pakiet zawierający wszystkie interfejsy i klasy do testowania przez JUnit.

Adnotacje JUnit z przykładem

Poniżej podano niektóre adnotacje JUnit:

1. @Przed

Istnieją scenariusze, w których niektóre przypadki testowe lub dane testowe muszą zostać utworzone przed wykonaniem rzeczywistego przypadku testowego. W takim przypadku na obrazie pojawiły się adnotacje @Przed. Dodanie adnotacji do dowolnej metody publicznej za pomocą tej adnotacji pozwala na uruchomienie kodu / metody przed każdą rzeczywistą metodą @test. W przypadku dziedziczenia najpierw wywoływane są metody nadrzędne @before, a następnie metody @before bieżącej klasy.

2. @ Po

Jest to przeciwieństwo adnotacji @Before. Jest używany w przypadkach, gdy należy wykonać pewne czynności, takie jak zwolnienie zasobów, wyczyszczenie pamięci, wydrukowanie czegokolwiek na konsoli po wykonaniu metody @test (po wykonaniu każdego przypadku testowego). Jest jedna ważna kwestia, na którą należy zwrócić uwagę w przypadku @ Po adnotacji, że będzie ona wykonywana nawet w przypadku, gdy metody @test lub @przed wygenerują wyjątek. W przypadku relacji podklasy i nadklasy metoda @ subter klasy podrzędnej / bieżącej jest wykonywana przed metodą @ klasy nadklasy.

3. @BeforeClass

Ta adnotacja jest używana w scenariuszach, w których należy wykonać pewne działania przed wykonaniem dowolnego przypadku testowego określonej klasy, np. Utworzenie połączenia z bazą danych, wpis w bazie danych, wpis w dziennikach itp. Gdy @BeforeClass adnotacja jest używana przed każdą metodą, która jest wykonywana przed jakąkolwiek metodą testową w klasie. Jego działanie jest podobne do różnicy tylko adnotacji @Before, ponieważ @Before wykonuje metodę przed wykonaniem każdej metody @test, podczas gdy @BeforeClass wykonuje się tylko raz, tj. Przed wykonaniem dowolnej metody @test w klasie.

4. @AfterClass

Wszystkie zasoby przydzielone w metodzie @BeforeClass należy zwolnić po wykonaniu wszystkich metod @test bieżącej klasy. To zwolnienie zasobów lub inne ważne zadanie, które należy wykonać po wykonaniu całej klasy, odbywa się za pomocą metody @AfterClass. Mówiąc najprościej, metoda @AfterClass jest uruchamiana po wykonaniu wszystkich metod @test bieżącej klasy. Jest wykonywany tylko raz. Metody @AfterClass są uruchamiane obowiązkowo, nawet jeśli metody @BeforeClass zgłaszają wyjątek.

Podobnie jak w przypadku metody @After działanie metody @AfterClass jest podobne, z wyjątkiem faktu, że metoda @After jest wykonywana po każdej metodzie @test klasy, natomiast metoda @AfterClass jest wykonywana raz po wykonaniu wszystkich metod @test klasy.

5. @Test

Ta adnotacja określa, że ​​metoda publiczna pod tą adnotacją jest częścią głównego przypadku testowego, który należy wykonać. Metoda pod @test określa przypadek testowy jako pozytywny lub negatywny w zależności od tego, czy wystąpi wyjątek / błąd podczas jego wykonywania.

Można go również użyć na 2 sposoby:

  • @Test (limit czasu = 500): przyjmuje parametr jako limit czasu, który przyjmuje wartości w milisekundach. Uważa przypadek testowy za nieudany, gdy jego wykonanie trwa dłużej niż oczekiwany i minie, gdy zostanie on pomyślnie wykonany w określonym terminie.
  • @Test (oczekiwano = Exception.class): Istnieją sytuacje, w których chcemy, aby niektóre metody zgłosiły określony wyjątek. Przypadek testowy kończy się niepowodzeniem, jeśli metoda nie zgłosi żadnego wyjątku lub wyżej wymienionego wyjątku.

6. @Ignore

Istnieją scenariusze, w których chcemy zignorować kilka przypadków testowych i nie chcemy ich uruchamiać. @Ignore pomaga w tym samym. Metody w adnotacjach @Ignore nie są wykonywane i są ignorowane podczas wykonywania kodu. Nawet w raportach generowanych przez TestNG pokazuje liczbę przypadków testowych, które są ignorowane i liczbę przypadków testowych przekazanych.

Przykład

Weźmy przykład Adnotacji JUnit

package demo;
import org.junit.*;
public class JUnitAnnotationTest (
// Run once, before any @test method in the class are executed
@BeforeClass
public static void bClass() (
System.out.println("BeforeClass method is called”);
)
// Run once after all the @test methods of the class are executed
@AfterClass
public static void aClass() (
System.out.println("AfterClass method is called");
)
// Run before every @test method of a class is executed
@Before
public void bMethod() (
System.out.println("before method is called");
)
// Run after every @test method of class is executed
@After
public void aMethod() (
System.out.println("after method is called");
)
// Test method which has actual test case
@Test
public void testMethod() (
System.out.println("Test method is called");
)
)

Wynik:

Zalety adnotacji JUnit

Poniżej podano niektóre zalety adnotacji JUnit:

  1. JUnit zapewnia łatwy sposób wykonywania przypadków testowych w określony sposób, zgodnie z wymaganiami użytkownika.
  2. Łatwo jest wykonywać wiele przypadków testowych równolegle za pomocą JUnit, łącząc je w zestawie testów.
  3. Adnotacje JUnit używane do automatyzacji przypadków testowych w Selenium zapewniają użytkownikowi bardzo szczegółowy i interaktywny, graficzny raport, który jest również bardzo przyjazny dla użytkownika.
  4. JUnit pozwala przekazać parametry w metodzie w bardzo prosty sposób.
  5. Adnotacje JUnit pomagają wykonywać czyste kodowanie, które jest bardzo łatwe do zrozumienia zarówno dla testerów, jak i programistów.

Wniosek

Powyższe wyjaśnienie jasno opisuje znaczenie frameworka JUnit oraz kolejność, w jakiej wywoływane są różne adnotacje JUnit. Bardzo ważne jest, aby zrozumieć różne adnotacje przed użyciem ich w programie, aby nie powodowało to żadnych problemów w kontrolowaniu przebiegu wykonywania.

Polecane artykuły

Jest to przewodnik po adnotacjach JUnit. Tutaj omawiamy wprowadzenie i adnotacje JUnit z przykładem, który obejmuje @ Before, @ After, @ Test i @Ignore, itp. Możesz również przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Testów jednostkowych
  2. Testowanie białych skrzynek
  3. Architektura selenu
  4. Uprząż testowa