J'entends souvent dire que le cadre de test le plus couramment utilisé pour les rails est RSpec. J'ai résumé les différences par rapport au minitest pouvant être utilisé avec le standard ruby.
La raison d'utiliser RSpec est "c'est pratique car il a toutes les différentes fonctions depuis le début." Si vous souhaitez partager uniquement cette partie du code de test, ou si vous souhaitez faire quelque chose d'un peu élaboré avec une maquette, vous pouvez presque le compléter avec les fonctions standard de RSpec.
Il est utilisé pour vérifier le fonctionnement d'un simple programme Ruby. Il est installé dans Ruby par défaut, il est donc pratique à utiliser immédiatement. Si vous essayez de faire quelque chose d'aussi élaboré que RSpec, vous devrez insérer de nombreux plug-ins, héritage, modules, etc., de sorte que minitest n'est pas souvent utilisé dans le code de test au niveau de l'entreprise.
D'un point de vue pratique, RSpec est préférable au minitest. Alors que minitest est un "framework de test", Rspec se veut un "environnement de test intégré".
En plus de fournir un DSL pour la définition du comportement, RSpec essaie activement d'intégrer diverses bibliothèques et outils périphériques liés aux tests et de fournir un support standard. Les types typiques sont décrits ci-dessous.
-Prise en charge standard de la coloration des résultats d'exécution RSpec (barre rouge / barre verte) ・ Prise en charge des techniques de test telles que la maquette et le stub, intégration avec les bibliothèques associées · En attente de soutien · Intégration avec des outils périphériques tels que Rake, RCov, Heckle et AutoTest (ZenTest) ・ Prise en charge de Ruby on Rails -Rapports de résultats d'exécution dans divers formats (par exemple sortie HTML). ・ Intégration avec TextMate ·etc
En raison de l'intégration active et de la prise en charge des outils périphériques ci-dessus, il y a beaucoup de choses qui peuvent être faites avec les fonctions standard de RSpec, donc on peut en déduire qu'elles sont largement utilisées.
À l'avenir, j'aimerais en savoir plus sur les tests avec RSpec.
Recommended Posts