Popularny framework do testów jednostkowych dla języków Java i Scala. Najnowsza wersja, JUnit 5, obsługuje rozbudowane testy oparte na adnotacjach i parametryzowane. Rozważ użycie w połączeniu ze znacznikiem Java lub Scala, aby wskazać swój przypadek użycia.
Jak mogę używać JUnit4 idiomatycznie do testowania, czy jakiś kod zgłasza wyjątek? Chociaż z pewnością mogę zrobić coś takiego: @Test public void testFooThrowsIndexOutOfBoundsException() { boolean thrown = false; try { foo.doStuff(); } catch (IndexOutOfBoundsException e) { thrown = true; } assertTrue(thrown); } Pamiętam, że istnieje adnotacja lub plik Assert.xyz lub …
Jaka jest główna różnica między @Before i @BeforeClass oraz w JUnit 5 @BeforeEachi@BeforeAll @After i @AfterClass Według JUnit Api @Before jest używany w następującym przypadku: Podczas pisania testów często zdarza się, że kilka testów wymaga podobnych obiektów utworzonych przed ich uruchomieniem. @BeforeClassMożna natomiast użyć do nawiązania połączenia z bazą danych. …
Czy ktoś wie, dlaczego zapewnia JUnit 4 assertEquals(foo,bar) ale nie assertNotEqual(foo,bar)metody? Zapewnia assertNotSame(odpowiada assertSame) i assertFalse(odpowiadaassertTrue ), więc wydaje się dziwne, że nie zawracali sobie tym głowy assertNotEqual. Nawiasem mówiąc, wiem, że JUnit-addons zapewnia metody, których szukam. Po prostu pytam z ciekawości.
Mam program maven, kompiluje się dobrze. Po uruchomieniu mvn testnie uruchamia żadnych testów (pod nagłówkiem TESTY mówi There are no tests to run.). Odtworzyłem ten problem z super prostą konfiguracją, którą przedstawię poniżej, a także dane wyjściowe po uruchomieniu -X. Testy jednostkowe działają poprawnie w środowisku eclipse (zarówno z domyślnym …
Chcę wykonać metody testowe opatrzone adnotacjami @Testw określonej kolejności. Na przykład: public class MyTest { @Test public void test1(){} @Test public void test2(){} } Chcę mieć pewność, że uruchomię się test1()przed test2()każdym uruchomieniem MyTest, ale nie mogłem znaleźć adnotacji takiej jak @Test(order=xx). Myślę, że jest to dość ważna funkcja dla …
Muszę napisać testy JUnit dla starej aplikacji, która jest źle zaprojektowana i pisze wiele komunikatów o błędach na standardowe wyjście. Gdy getResponse(String request)metoda zachowuje się poprawnie, zwraca odpowiedź XML: @BeforeClass public static void setUpClass() throws Exception { Properties queries = loadPropertiesFile("requests.properties"); Properties responses = loadPropertiesFile("responses.properties"); instance = new ResponseGenerator(queries, responses); …
OK, więc @Ignoreadnotacja jest dobra do oznaczenia, że przypadek testowy nie powinien zostać uruchomiony. Czasami jednak chcę zignorować test oparty na informacjach wykonawczych. Przykładem może być test współbieżności, który należy uruchomić na maszynie z określoną liczbą rdzeni. Jeśli ten test zostałby uruchomiony na maszynie jednoprocesorowej, nie sądzę, że poprawne byłoby …
Używam Mockito 1.9.0. Chcę kpić zachowanie dla jednej metody klasy w teście JUnit, więc mam final MyClass myClassSpy = Mockito.spy(myInstance); Mockito.when(myClassSpy.method1()).thenReturn(myResults); Problem polega na tym, że w drugiej linii myClassSpy.method1()jest wywoływany, co powoduje wyjątek. Jedynym powodem, dla którego używam makiet, jest to, że później, przy każdym myClassSpy.method1()wywołaniu, nie zostanie wywołana …
Jestem nowy w Mockito. Biorąc pod uwagę poniższą klasę, jak mogę użyć Mockito, aby sprawdzić, czy wywołano someMethoddokładnie raz po foowywołaniu? public class Foo { public void foo(){ Bar bar = new Bar(); bar.someMethod(); } } Chciałbym wykonać następujące połączenie weryfikacyjne, verify(bar, times(1)).someMethod(); gdzie barjest kpina z Bar.
Chcę sprawdzić, czy metoda jest wywoływana przynajmniej raz za pomocą weryfikacji mockito. Użyłem weryfikacji i narzeka tak: org.mockito.exceptions.verification.TooManyActualInvocations: Wanted 1 time: But was 2 times. Undesired invocation:
Czy istnieje sposób na przechwycenie listy określonego typu przy użyciu mockitos ArgumentCaptore. To nie działa: ArgumentCaptor<ArrayList<SomeType>> argument = ArgumentCaptor.forClass(ArrayList.class);
Chciałbym wstrzyknąć próbny obiekt Mockito do fasoli Spring (3+) na potrzeby testów jednostkowych z JUnit. Moje zależności fasoli są obecnie wstrzykiwane za pomocą @Autowiredadnotacji na prywatnych polach członkowskich. Zastanawiałem się nad użyciem, ReflectionTestUtils.setFieldale instancja komponentu bean, którą chcę wstrzyknąć, jest w rzeczywistości proxy i dlatego nie deklaruje pól prywatnych członków …
Wiem, że mogę załadować plik z src / test / resources za pomocą: getClass().getResource("somefile").getFile() Ale w jaki sposób można uzyskać pełną ścieżkę do src / test / zasobów katalogu , to znaczy nie chcę, aby załadować plik, po prostu chcę znać ścieżkę katalogu?
Framework JUnit zawiera 2 Assertklasy (oczywiście w różnych pakietach), a metody w każdej z nich wydają się bardzo podobne. Czy ktoś może wyjaśnić, dlaczego tak jest? Klasy, o których mówię to: junit.framework.Asserti org.junit.Assert.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.