使用测试DAO'm JUnit和主要我做的是在休眠启动一个事务,调用比较函数,然后回滚transaccion.El问题是,如果我的测试功能是一个交易错误,我不能剥夺窝,我想过实施DBUnit的XML,但管理层似乎并没有在这种情况下,我没有足够的测试用例,这种方法是一个好主意,少的想法。 任何人有任何想法如何解决它,而不必使用任何其他与JUnit或休眠状态?
这是一个例子
@Test
public void Test1GetByCodigo(){
String cod = "999999999";
DBTenant dbTenant = null;
Session sess = null;
Transaction trans = null;
ClienteBO cli = null;
Clientes clie = null;
try{
try{
dbTenant = new DBTenant();
sess = dbTenant.getTenantSession();
trans = sess.beginTransaction();
}
catch(Exception e){
fail("Error en la carga de la transaccion.Quedo alguna transaccion abierta?");
}
clie = CargaCliente(cod);
sess.save(clie);
cli = cliBL.getByCodigo(cod);
}
catch(Exception e){
trans.rollback();
dbTenant.closeSession();
fail("Error la carga del cliente.Se modifico la bse de datos Clientes??");
}
trans.rollback();
sess.clear();
dbTenant.closeSession();
ClienteBO clieEsp = CargaClienteBO(clie);
assertNotNull(clieEsp);
assertNotNull(cli);
assertEquals("Error el cliente no coincide",clieEsp,cli);
}
如果cliBL.getbycodigo()函数tubiera交易将有一个错误,谢谢您的帮助,谢谢