Wycofywanie transakcji po @Test

Po pierwsze, znalazłem wiele wątków w StackOverflow na ten temat, ale żaden z nich naprawdę mi nie pomógł, więc przepraszam, że mogę zadać duplikat pytania.

Używam testów JUnit za pomocą testu wiosennego, mój kod wygląda tak

@RunWith(SpringJUnit4ClassRunner.class)  
@ContextConfiguration(locations = {})
public class StudentSystemTest {

    @Autowired
    private StudentSystem studentSystem;

    @Before
    public void initTest() {
    // set up the database, create basic structure for testing
    }

    @Test
    public void test1() {
    }    
    ...  
}

Mój problem polega na tym, że chcę, aby moje testy NIE miały wpływu na inne testy. Chciałbym więc stworzyć coś takiego jak wycofanie dla każdego testu. Wiele tego szukałem, ale do tej pory nie znalazłem niczego. Używam do tego Hibernate i MySql

questionAnswers(6)

yourAnswerToTheQuestion