7

我正在作为单元测试运行,即使我@rollback在 spring 3.1 中不使用它也会自动返回。我的测试看起来像

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:application-context.xml" })
public class PersonServiceTest {

    @Test
    @Transactional
    public void savePerson() {
            Person person = createPerson();
            personService.savePerson(person);
    }
}

回滚行为是默认设置的吗?

4

1 回答 1

14

默认情况下SpringJUnit4ClassRunner会自动回滚事务。

要消除这种影响,@TransactionConfiguration(defaultRollback=false)请在您的测试类或@Rollback(false)每个测试上使用。

于 2012-08-05T02:13:00.367 回答