Mam klasę podstawową, którą rozszerzają wszystkie moje testy kontrolerów. Jest to ustawione tak, aby każdy test jednostki mógł mieć własne Urządzenie do załadowania.Jak sprawdzić w Play Framework, jeśli test jednostkowy wykonał wstawienie/aktualizację/usunięcie
Tak więc nadpisanie @Before sprawdzi, jakie jest wymagane urządzenie do testu, załaduj je, a następnie rozpocznij test.
Problem polega na tym, że to ładuje urządzenie za każdym razem. Nawet jeśli metoda wybrała tylko bazę danych, nic nie zmieniając.
Wewnętrzna baza danych pamięci używana przez Play Framework to baza danych H2. Zastanawiam się, czy istnieje sposób sprawdzenia po zakończeniu testu jednostkowego, czy nastąpiła zmiana w bazie danych, a jeśli nie, pomiń przeładowywanie dokładnie tych samych danych.
Próbowałem identity_scope, zwraca null bez względu na wszystko.
ja nie wiem, czy istnieje możliwość, aby go osiągnąć z tylko Junit tych, ale jest narzędziem, które można łatwo zarządzać tym obciążeń. Jego dbunit i można go łatwo wykorzystać w grze. O ile mogę powiedzieć, głównym celem Junit jest oddzielenie testów od siebie. ale nie mówię, że to nie jest możliwe Może mógłbyś spróbować z @BeforeClass z kombinacją z zestawem testów. –
Rozejrzałem się i wygląda na to, że będę musiał zreorganizować wszystkie moje dotychczasowe testy jednostkowe. Dzięki za sugestię, ale nie mogę na to czasu. – KdgDev
Czy rozważałeś zmianę bazy danych w pamięci na rzeczywistą fizyczną bazę danych? –