jbehave e pepino são quadros completamente diferentes, embora sejam projetados para o mesmo propósito: testes de aceitação. Eles são baseados em histórias (jbeheve) ou características (pepino). Um recurso é uma coleção de histórias, expressa a partir do ponto de vista de um participante específico do projeto. Em seus testes, refere-se a histórias, geralmente através da concordância de expressões regulares.
jbehave é um quadro java puro, enquanto o pepino é baseado em Ruby. Ambos são quadros muito maduros. Você pode usar o Pepino Java através do plugin Moven Cuke4Duke de Maven, mas ainda há falta de correspondência de linguagem, pois continua a usar o Ruby internamente e terá que instalar esta linguagem e sua infraestrutura (os chamados ‘gemas’) em a máquina que executa seus testes. Isso pode ser frágil e a incompatibilidade linguística complica tanto a depuração quanto impede o desempenho de seus testes. Agora há uma implementação pura do Pepino Java que é chamada de pepino-JVM. Em dezembro de 2011, ainda não foi publicado, mas é perfeitamente utilizável (Editar: versão 1.0.0 em 27 de março de 2012). Este novo quadro é muito semelhante ao jbehave, já que ambos têm apoio nativo da junit.
O seguinte é uma comparação de pepino-jvm e jbehave.
semelhanças:
- suporte junit fora da caixa
- puro java
- rápido
- fácil de usar
prós / contras jbehave :
- pro muito boa documentação
- pro formato html muito bom dos resultados dos testes
- com apenas histórias, nenhum recurso
Prós / contras de pepino-JVM:
- Recursos de suporte pro
- com não suporta testes de junit paralelos. No entanto, será trabalhado com construções paralelas de Maven 3.
- documentação
- sem formato HTML bonito dos resultados do teste, além do formato próprio do jubit (edit: pepino A JVM agora suporta saída HTML)
Se você estiver em um projeto Java, eu recomendaria JBehave (se você estiver procurando por uma ótima documentação) ou pepino-jvm (se o suporte ou histórias de recurso É importante para você).
Eu tentei as duas estruturas e passou por pepino-jvm.