Pergunta

Como você tomar uma decisão entre pepino e deveria ter se estivesse prestes a escolher uma estrutura de teste?

O que diferencia estas duas estruturas, principalmente?

Foi útil?

Solução

Como toda a gente tem a pontas, pepino e Shoulda tem objetivos bastante diferentes. Você pode pensar em Pepino como sendo a "visão de 10.000 pés" Testando quadro - você define um recurso ou específica ampla interação do usuário e garantir que tudo funciona em conjunto. Shoulda é para testes de unidade -. Você escolher um modelo específico e testar exaustivamente todos os pequenos pedaços exigentes de funcionalidade para que a parte individual

Normalmente, você iria querer usar este tipo de estruturas em conjunto. Por exemplo, a maioria de seu amplo, testes de alto nível podem ser escritos em Pepino, mas quando há um pouco particularmente complexa ou opaco de código em seu sistema, você pode detalhar com Shoulda ou RSpec para testar as indicações.

Outras dicas

Eles têm objetivos completamente diferentes. Shoulda é uma extensão do teste de unidade construída em cima de Test :: Unit.

O pepino é um framework de testes de aceitação / funcional que pode usar Test :: Unit / RSpec / O que quer para fazer as afirmações.

Deveria pode ser directamente comparada com Rspec, por exemplo.

Não vejo ninguém mencionar que você realmente pode usar Shoulda como o "test-motor" para pepino.

Pepino é alvo Teste de Aceitação. Shoulda é um framework de teste de unidade.

Shoulda é uma extensão do quadro Test::Unit que consiste de macros de teste, afirmações, e ajudantes. Shoulda é uma maneira mais bonita para testes de unidade de gravação.

Pepino - uma reescrita de "corredor Story" do RSpec - é uma ferramenta para -Driven Comportamento Desenvolvimento . Ele permite que você para escrever especificações executáveis ??em uma linguagem específica de domínio de negócio legível. Pepino é mais uma ferramenta de teste de aceitação.

Pepino e Shoulda têm, portanto, diferente objetivo (mesmo se Shoulda pode ser usado para BDD).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top