MouseOver Studio

MouseOver Studio header image 2

Testes legais com RSpec na plataforma Java/Maven agora possível com rspec-maven-plugin

dezembro 20th, 2008 por Diego Carrion · 2 comentários

Um pouco de historia

Os que me seguem no Twitter devem estar sabendo que nos últimos dias esteve trabalhando num projeto em Java porém utilizando RSpec para testar ele. Se você ainda testa código feito em Java utilizando Java, te recomendo sair dessa vida, gasta um dia ou o tempo que for necessário para poder criar testes utilizando RSpec e se feliz criando testes de qualidade.

No projeto mencionado, a maioria dos desenvolvedores se sentia confortável utilizando Maven pelo que teve que me adequar a essa ferramenta que eu tanto gosto (ironia mode on) e averiguar se existia algo que vinculasse ela ao RSpec.

Foi assim que achei esse post onde Bob apresenta o plugin rspec-maven-plugin que permite executar os testes criados en RSpec ao executar o target test do Maven, todo o que eu queria.

Configurei o plugin no meu pom.xml, executei a target test e… não funcionou. Como todo problema é também algo bom porque oferece a oportunidade de fazer algo legal, decidi realizar um fork do projeto e corrigir ele.

O plugin

Como o plugin não esta no repositório oficial, para instalar o plugin rspec-maven-plugin deve ser executado:

git clone git://github.com/dcrec1/rspec-maven-plugin.git
cd rspec-maven-plugin
mvn install

Caso não tenham o Git instalado, podem baixar as fontes de aqui.

Uma vez no repositório local, podem configurar o plugin adicionando o seguinte ao pom.xml:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>rspec-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>test</id>
            <phase>test</phase>
            <goals>
                <goal>spec</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Depois disto, o único pre-requisito para executar o plugin é setar a variável de ambiente JRUBY_HOME.

Ao executar o target test, o Maven ira executar os testes dentro da pasta spec.

Obrigado JRuby, happy testing!

Tags: bdd · java · Maven · rspec · tdd

2 respostas ate agora ↓

  • 1 Miguel Baldi // dez 20, 2008 at 10:08 pm

    Grande Dieguito! Cara, estive perdendo bastante tempo tentando testar código Java com ruby. Este post caiu como uma luva. Abraço

  • 2 Diego Carrion // dez 22, 2008 at 11:23 pm

    Valeu Miguel, espero que tenha dado certo, ninguém merece ficar presso ao JUnit 😛

Deixar um comentário