teste de integracao com dbunit e jstryker
DESCRIPTION
Teste de integração com DbUnit e JStryker.TRANSCRIPT
Comunicação com o banco@BeforeClasspublic void beforeClass() {
factory = new AnnotationConfiguration().configure().buildSessionFactory();session = factory.openSession();
transaction = session.getTransaction();}
Comunicação com o banco@BeforeClasspublic void beforeClass() {
factory = new AnnotationConfiguration().configure().buildSessionFactory();session = factory.openSession();
transaction = session.getTransaction();}
@Beforepublic void setup() { transaction.begin();}
Comunicação com o banco@BeforeClasspublic void beforeClass() {
factory = new AnnotationConfiguration().configure().buildSessionFactory();session = factory.openSession();
transaction = session.getTransaction();}
@Beforepublic void setup() { transaction.begin();}
@Testpublic void deveriaBuscarPorId() { assertNotNull("Loja não encontrada!", repository.loadById(1l));}
Comunicação com o banco@BeforeClasspublic void beforeClass() {
factory = new AnnotationConfiguration().configure().buildSessionFactory();session = factory.openSession();
transaction = session.getTransaction();}
@Beforepublic void setup() { transaction.begin();}
@Testpublic void deveriaBuscarPorId() { assertNotNull("Loja não encontrada!", repository.loadById(1l));}
@Afterpublic void tearDown() { transaction.rollback();}
hibernate.properties
hibernate.connection.driver_class=com.mysql.jdbc.Driverhibernate.connection.username=roothibernate.connection.password=roothibernate.connection.url=jdbc:mysql://127.0.0.1:3306/wbotelhos_testhibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialecthibernate.hbm2ddl.auto=updatehibernate.validator.apply_to_ddl=true
<dataset> <loja id="1" code="adena-001" name="Estação do Ar" />
<loja id="2" code="adena-002" name="Acimaq" /><loja id="3" code="adena-003" name="Bertek" />
</dataset>
public class Loja {
private Long id; private String code; private String name;}
Model x XML
Populando o bancoa partir do XML
Connection conn = dataSource.getConnection();
IDatabaseConnection iConn =new MySqlConnection(conn, conn.getMetaData().getUserName());
FlatXmlDataSet xml =new FlatXmlDataSetBuilder().build(new FileInputStream("loja.xml"));
DatabaseOperation operation = new InsertIdentityOperation(DatabaseOperation.CLEAN_INSERT);
operation.execute(iConn, xml);
conn.close();
Subindo a JPA
@BeforeClasspublic static void beforeClass() { JPAHelper.entityManagerFactory("default");}
Populando o banco erecuperando o EntityManager
@Beforepublic void setup() { new DBUnitHelper().cleanInsert(“loja.xml”);
EntityManager manager = JPAHelper.currentEntityManager(); repository = new LojaBusiness(manager);}
@Test
@Testpublic void deveriaBuscarPorId() { assertNotNull("Loja não encontrada!", repository.loadById(1l));}
Fecha a conexãoe limpa o banco
@Afterpublic void tearDown() { JPAHelper.close(); new DBUnitHelper().deleteAll(“loja.xml”);}