Czy istnieje sposób na zdefiniowanie odmiennego rozbierania dla każdego @ testu w jUnit?Różne rozbieżności dla każdego @ Test w jUnit
Odpowiedz
Użyj adnotacji @After
, aby wskazać metodę (-y), które będą uruchamiane po każdym @Test
.
pełnego zestawu adnotacji, jak to jest:
@BeforeClass
- przed wszystkim@Tests
prowadzą@Before
- przed każdym@Test
prowadzony jest@After
- po każdym@Test
prowadzony jest@AfterClass
- po wszystkim@Tests
są uruchamiane
Właśnie zdałem sobie sprawę, że mogłem nie zrozumieć tego pytania. Jeśli proszą jak skojarzyć konkretnej metody przerywaniem do konkretnej metody @Test, nie ma potrzeby stosowania adnotacji: po prostu nazwać to pod koniec swojej metody badawczej w finally:
@Test
public void someTest() {
try {
// test something
} finally {
someParticularTearDown();
}
}
Dziękuję. Tego potrzebuję. – Daniel
To nie jest optymalne, ponieważ będziesz musiał powtórzyć ten kod dla każdej metody testowej. –
Ten ostatni przykład miał jedynie na celu wyjaśnienie ewentualnej interpretacji pytania - ja osobiście rzadko to robię, ale jest to jednak najprostsza opcja, jaką mogę wymyślić, aby mieć różne metody usuwania różnych testów @Tests. – Bohemian
Punktem zgrupowania Metody testowe są wspólne dla tej samej klasy, więc mogą dzielić się rzeczami, w tym mieć tę samą konfigurację i rozbiór. Tak, możesz zdefiniować oddzielne oderwania dla każdego testu, ale robisz to, umieszczając metody @Test w różnych klasach.
Po rozpoczęciu oddzielnych metod odrzucania uzasadnienie, dlaczego chcesz pogrupować testy w tej samej klasie, nie jest oczywiste. Możesz więc poradzić sobie z tą sytuacją, elastycznie biorąc pod uwagę sposób grupowania testów na zajęciach.
Tak, zamiast tego rozważ umieszczenie kodu konfiguracji i odrywania w swojej metodzie '@ Test'. Należy jednak zwrócić uwagę na to, aby kod wywołania był wywoływany, nawet jeśli zostanie zgłoszony wyjątek, używając 'try' ...' finally'. – Raedwald
@Raedwald: tak, podejście Bohemiana jest jednym ze sposobów, aby to zrobić, ale tracisz trochę mocy ramy, ponieważ teraz musisz dodać blok końcowy. –
Nie ma prostego sposobu na zrobienie tego w JUnit. Dzięki TestNG możesz umieszczać swoje metody w grupach, dzięki czemu możesz zdefiniować konkretne metody @ BeforeMethod/@ AfterMethod, które działają tylko w określonych grupach.
- 1. JUnit Najlepsza praktyka: różne urządzenia dla każdego testu @Test
- 2. Różne elementy wdrażania dla każdego testu
- 3. Podstawowy test JUnit dla JavaFX 8
- 4. JUnit test zawiesza się
- 5. jak JUnit test IntentService
- 6. Struts 2.3.14 junit test
- 7. Różnica między mapą rozbieżności a obrazem rozbieżności w dopasowaniu stereo
- 8. Thrift - różne egzemplarze Handler dla każdego gniazda
- 9. Różne URI dla każdego wystąpienia UIViewController
- 10. Szyny 3: Różne widoki dla każdego modelu
- 11. lista androidów różne widoki dla każdego elementu
- 12. JUnit Test baza Ustawianie automatyczne
- 13. uruchamianie podzbioru metod JUnit @Test
- 14. Jak ustawić różne wysokości dla każdego wiersza w widoku listy?
- 15. Różne tytuły dla każdego fragmentu w moim viewpager
- 16. Czy jest możliwe użycie różnych @Before @After dla każdego przypadku testowego w JUnit?
- 17. Test JUnit oparty na JPA Test Best Practices
- 18. Uruchom Junit @ Test ignoruje @ Przed/@ Po
- 19. Android Studio JUnit czysty test Java
- 20. JUnit Test "Times Out" pomimo szybkiego wykonywania?
- 21. JUnit test na spodziewany limit czasu
- 22. Test jednostki Selenium przy użyciu JUnit (Java)
- 23. Intellij: Zmień szablon JUnit Test Class
- 24. Klasa testowa Junit z wieloma metodami @Test
- 25. Różne narożaRadius dla każdego rogu Swift 3 - iOS
- 26. Jak kontynuować test po wyrzuceniu JUnit ExpectedException?
- 27. Różne ustawienia * .csproj/* .config dla każdego członka zespołu i oddziału
- 28. Test Java Junit Żądanie HTTP POST
- 29. Jak mogę czekać na test JUnit?
- 30. RavenDB - LINQ - rozbieżności Count()
Dlaczego po prostu opisać metodę odrzucania z '@ org.junit.After'? – Constantiner
@Constantiner Ponieważ jest to tylko jedna metoda After dla wszystkich testów. I muszę biegać dla każdego Testu o własne rozstanie. – Daniel
@Daniel, Umieść testy w osobnych testach z dedykowanymi przerwami. – Constantiner