Esta é uma dica muito importante quando é necessário criar classes de testes para o seu projeto. Desta forma conseguimos
verificar no console utilizado para o próprio Maven ou até mesmo em um arquivo o prosseguimento dos testes.
O primeiro passo deste exemplo é a criação do projeto basicamente. Estou usando como exemplo o projeto em Maven em 5 Minutos.
Após criar o projeto conforme explicado no link será necessário alterar o pom.xml e criar o arquivo log4.properties.
Arquivo de configuração do Log4j
Crie um arquivo log4.properties na pasta src\test\resources e inclua o seguinte trecho de código:
log4j.logger.br.com=DEBUG, rolling1# Console Appendlog4j.appender.rolling1=org.apache.log4j.ConsoleAppenderlog4j.appender.rolling1.layout=org.apache.log4j.PatternLayoutlog4j.appender.rolling1.layout.ConversionPattern=%d{dd/MM/yyyy HH\:mm\:ss,SSS} %-5p %c{2}.%M - %m%n
Alteração do pom.xml
Inclua a dependência do Log4j:
<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.16</version><type>jar</type></dependency>
Inclua a configuração do plugin maven-surefire-plugin para que seja possível usar o log4j nos testes unitários:
<build><plugins><plugin><artifactId>maven-surefire-plugin</artifactId><version>2.8.1</version><configuration><systemProperties><property><name>maven.junit.sysproperties</name><value>log4j.configuration</value></property><property><name>log4j.configuration</name><value>file:target/test-classes/log4j.properties</value></property></systemProperties><includes><include>**/*Test.java</include></includes></configuration></plugin></plugins></build>
O novo arquivo pom.xml deve ficar semelhante ao código abaixo após todas as alterações:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>br.com.maven3.tutorial</groupId><artifactId>projeto.exemplo</artifactId><packaging>jar</packaging><version>1.0-SNAPSHOT</version><name>projeto.exemplo</name><url>http://maven.apache.org</url><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.16</version><type>jar</type></dependency></dependencies><build><plugins><plugin><artifactId>maven-surefire-plugin</artifactId><version>2.8.1</version><configuration><systemProperties><property><name>maven.junit.sysproperties</name><value>log4j.configuration</value></property><property><name>log4j.configuration</name><value>file:target/test-classes/log4j.properties</value></property></systemProperties><includes><include>**/*Test.java</include></includes></configuration></plugin></plugins></build></project>
Alteração da Classe de Testes
No exemplo que acabamos de criar já foi criado também a classe AppTest em src\test\java\br\com\maven3\tutorial.
package br.com.maven3.tutorial;import junit.framework.Test;import junit.framework.TestCase;import junit.framework.TestSuite;import org.apache.log4j.Logger;/**
* Unit test for simple App.*/public class AppTest extends TestCase {static Logger logger = Logger.getLogger(AppTest.class);/**
* Create the test case** @param testName* name of the test case*/public AppTest(String testName) {super(testName);}/**
* @return the suite of tests being tested*/public static Test suite() {logger.info("return new TestSuite( AppTest.class )");return new TestSuite(AppTest.class);}/**
* Rigourous Test :-)*/public void testApp() {logger.info("assertTrue( true )");assertTrue(true);}}
Após os procedimentos acima basta executar o comando mvn test.
Pronto, já temos um projeto com testes unitários configurado corretamente no Maven!
0 comentários:
Postar um comentário
Leia as regras:
Todos os comentários são lidos e moderados previamente.
Apenas os que respeitam as regras abaixo serão publicados:
- o comentário deve estar relacionado ao assunto do post
- não serão aceitos palavrões e ofensas ao redator do blog ou a terceiros
- não inclua links desnecessários no conteúdo do comentário
- se quiser deixar sua url, comente com a opção OpenId
Obs.: os comentários dos leitores não refletem a opnião do blog.