A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

SENAC – Curso de Pós-graduação em Engenharia de Software com J2EE Módulo: Web Application Interface - Turma 2 Prof. Ismael DBUnit Framework Componentes:

Apresentações semelhantes


Apresentação em tema: "SENAC – Curso de Pós-graduação em Engenharia de Software com J2EE Módulo: Web Application Interface - Turma 2 Prof. Ismael DBUnit Framework Componentes:"— Transcrição da apresentação:

1 SENAC – Curso de Pós-graduação em Engenharia de Software com J2EE Módulo: Web Application Interface - Turma 2 Prof. Ismael DBUnit Framework Componentes: Fábio Gomes Claver Pari Eni Conde

2 Framework O que é Framework? - é um conjunto de conceitos usados para resolver um problema de um domínio específico. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. FAYAD e SCHMIDT O Framework conceitual não se trata de um software executável, mas sim de um modelo de dados para um domínio. Os Framework tornam mais eficientes a solução de problemas.

3 JUnit Framework É utilizado por aqueles que desejam implementar testes unitários em Java. Com JUnit, o programador tem uma ferramenta que o ajuda a eliminar os erros de seu código de maneira automatizada. Uma vez programado pode ser executado quantas vezes necessário. Tipicamente um teste unitário executa um método individualmente e compara uma saída conhecida após o processamento da mesma. Por exemplo: 1.Assert.assertEquals(2, somaMetodo(1,1)); 2.Assert.assertEquals("A lista vazia deve ter 0 elementos", 0, listaVazia.size());

4 DBUnit Framework DbUnit é mais abrangente que o popular JUnit test Framework. Além de implementar todas as suas funcionalidades acrescenta outras específicas para Banco de Dados. Auxilia de forma racional a execução de Testes automatizados que utilizam Banco de Dados. Mantem o Banco de Dados no seu estado inicial evitando dados corrompidos por falhas da fase de teste. Sua realização é importante no sentido de gerir os dados dos testes. Pode manipular grande massa de dados.

5 DBUnit Framework Possui mecanismos simples para exportar e importar tabelas para posterior utilização. Exportando uma tabela public void testExportData() throws Exception { IDataSet dataSet = getConnection().createDataSet(new String[] { TABLE_NAME }); URL url = DatabaseTestCase.class.getResource("/input.xml"); assertNotNull(url); File inputFile = new File(url.getPath()); File outputFile = new File(inputFile.getParent(), "output.xml"); FlatXmlDataSet.write(dataSet, new FileOutputStream(outputFile)); assertEquals(FileUtils.readFileToString(inputFile, "UTF8"), FileUtils.readFileToString(outputFile, "UTF8")); }

6 DBUnit Framework O DBUnit permite que arquivos XML possam ser criados manualmente, a partir do zero. Ou ainda carregados a partir de uma tabela. Possui um mecanismo simples, baseado em XML, para carga de dados. Criando um arquivo XML protected IDataSet getDataSet() throws Exception { loadedDataSet = new FlatXmlDataSet( this.getClass().getClassLoader().getResourceAsStream("input.xml")); return loadedDataSet; }

7 DBUnit Framework Possui métodos para comparação entre tabelas. Comparando tabelas 1.public class Assertion { public static void assertEquals(ITable expected, ITable actual) public static void assertEquals(IDataSet expected, IDataSet actual) } 2.Assertion.assertEquals(new SortedTable(expected), new SortedTable(actual, expected.getTableMetaData())); 2.public void testCompareQuery() throws Exception { QueryDataSet queryDataSet = new QueryDataSet(getConnection()); queryDataSet.addTable(TABLE_NAME, "SELECT * FROM + TABLE_NAME); Assertion.assertEquals(loadedDataSet, queryDataSet); }

8 DBUnit Framework O ciclo de vida do Teste DbUnit – O cenário básico para a execução de teste com DbUnit é o seguinte: remover qualquer dado antigo, de testes anteriores, no banco de dados. carregar alguns dados do sistema de arquivos para o banco de dados. executar alguns testes, utilizando métodos DbUnit para fazer as comparações.

9 DBUnit Framework O ciclo de vida do Teste DbUnit – As duas primeiras operações ocorrem durante a execução do método JUnit setup(). –Os testes podem rodar um pouco mais devagar, mas a idéia é que o SetUp somente carregue os dados para um teste específico, ao invés dos dados requeridos para todos os testes. –Note que a restauração do banco é feita antes de executar os testes e não após. Esta é a prática recomendada pelos autores do DbUnit.

10 DBUnit Framework Permite ver como o métodos setUp() e tearDown() são executados no DatabaseTestCase classe. protected void setUp() throws Exception { super.setUp(); executeOperation(getSetUpOperation()); } protected void tearDown() throws Exception { super.tearDown(); executeOperation(getTearDownOperation()); }

11 DBUnit Framework Conectando o banco protected IDatabaseConnection getConnection() throws Exception { Class driverClass = Class.forName("com.mysql.jdbc.Driver"); Connection jdbcConnection = DriverManager.getConnection("jdbc:mysql://localhost:3306/Framework Database", "root", password"); return new DatabaseConnection(jdbcConnection); }

12 DBUnit Framework Boas práticas – Unit Test Frameworks - é um elemento chave Importante para Programação em Desenvolvimento Ágil. –Elas ajudam a garantir baixo nível de correção de código, reduzir tempo de ciclo do desenvolvimento do software, melhorar a produtividade do desenvolvedor, e produzir software mais robustos.

13 DBUnit Framework Resumo DbUnit é uma ferramenta poderosa e simples de usar, permitindo o desenvolvimento de aplicações de bancos de dados. DbUnit é projetado em torno de interfaces Java flexíveis, tornando fácil adaptar aos requisitos da aplicação. É simples incluir o DbUnit como parte do processo de desenvolvimento da sua aplicação de banco de dados e aproveitar as vantagens das suas poderosas caracteristicas de economia de tempo.

14 DBUnit Framework Resumo O DbUnit framework tem a habilidade de gerenciar o estado de um banco de dados, em que através de testes de ciclo de vida, permite a criação e adoção de test-case rápidos. Os testes que utilizam o framework do DbUnit são facilmente automatizados. DbUnit possui design elegante e por ser de fácil aprendizado, logo faz parte de uma estratégia eficaz de testes, proporcionando código com estabilidade aumentando dramaticamente a confiança de sua equipe de desenvolvimento.


Carregar ppt "SENAC – Curso de Pós-graduação em Engenharia de Software com J2EE Módulo: Web Application Interface - Turma 2 Prof. Ismael DBUnit Framework Componentes:"

Apresentações semelhantes


Anúncios Google