1

我是 webservices 的新手,我正在考虑在使用 webServices 的测试自动化中使用保存点机制。下面是一个代码片段

Connection con = 
    DriverManager.getConnection("jdbc:derby://localhost:1527/testDb", 
                                "name","pass");
con.setAutoCommit(false);
Savepoint spt1 = con.setSavepoint("svpt1");
WebService.Post() method for various CRUD operations.....
con.rollback(spt1);
con.commit();

设置保存点和回滚之间的操作是使用 webServices 进行的各种 CRUD 操作,因此当保存点回滚时,自动化过程中创建的脏数据将被擦除。我很想知道在这里使用保存点机制是否是一种好习惯,如果可以使用,那么创建+回滚保存点的平均时间是多少?

4

2 回答 2

0

除非我误解了这个问题,否则你不能回滚在另一个事务中已经完成的事情。所以你在这里做的事情没有多大意义。

保存点和回滚可用于回滚自保存点与您回滚的连接以来所做的操作。其他一切都与保存点无关,并且无法撤消。

于 2012-09-25T18:55:19.440 回答
0

听起来像是DBUnit的完美用例——它可以在每次测试执行之前重新创建整个数据库。

于 2012-09-25T19:25:16.410 回答