TestNG中多次测试的交易问题

时间:2013-12-11 11:17:20

标签: java spring hibernate jpa testng

我有两个测试用例,第一个测试用例保存记录,第二个测试用例更新第一个测试用例中添加的记录。我使用JPA / Hibernate作为ORM。

我的TestNG测试类如下:

@ContextConfiguration("file:application-context-test.xml")
@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)
public class MyEntityTest {

    int long myEntityId; 

    @Test
    @Transactional
    public saveTest(){
      session=getCurrentSessionFactory()
      myEntity = new myEntity();
      myEntityId = session.save(myEntity)
    }

    @Test(dependsOnMethods={"saveTest"})
    @Transactional
    public updateTest(){
      session=getCurrentSession()
      myEntity =session.getByID(myEntityId)
      session.update(myEntity)
    }
}

但是当执行第二个测试用例时,这会提示记录/实体不存在的错误。

即使两个测试都注释为 @Transactional ,但似乎测试仍在单独的事务中执行。

任何想法?我错过了什么重要的事吗?这是执行测试的正确方法还是我应该遵循一些不同的方法?

0 个答案:

没有答案