La sortie suivante apparaît après avoir exécuté certaines tâches de râteau: Cette sortie n'est pas utile ni nécessaire pour les tâches non liées aux tests. J'aimerais l'empêcher de comparaître. Je suppose que cela découle de nécessiter un fichier donné ou comprenant un certain module. P> mis à jour: il apparaît que j'avais mal et que cela se pose pendant certaines des tâches intégrées à des rails. Voici la sortie des appareils chargés avec - TRACE CODE>. P>
$ rake db:fixtures:load --trace
** Invoke db:fixtures:load (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:fixtures:load
Loaded suite /usr/bin/rake
Started
Finished in 0.000255 seconds.
0 tests, 0 assertions, 0 failures, 0 errors
3 Réponses :
Vérifiez d'abord le motif de test pour votre Pour une raison quelconque, Test :: Unité tente de trouver des tests dans le Chaque fois que vous avez des problèmes, vous souhaitez exécuter RAKE :: testTask code>. Devrait être quelque chose comme
'test / ** / * _ _ test.rb' code>. P>
/ usr / bin / râteau code> exécutable, ce qui signifie probablement que vous avez un motif faux quelque part. P>
rake code> avec
- TRACE code> pour voir quelles tâches et quelles dépendances de tâches sont exécutées et dans quel ordre. Si la mise à jour du modèle ne fonctionne pas, veuillez copier la sortie d'une exécution complète avec
- TRACE code> activé dans votre question. P>
L'un des autres développeurs que je travaille sur le projet a récemment fourni tous nos gemmes. C'est possible c'est la cause? Les seuls endroits appelés Rake :: Testtask sont dans les répertoires de gemmed et de plugin fournis.
Difficile à dire sans la sortie de - trace code>. S'il n'y a pas de tâche de test explicite, vous voulez probablement écrire le vôtre. La tâche de test par défaut ne fera rien d'utile comme Vérifiez votre couverture de code. Quoi qu'il en soit, si un test de test se produit pour toute tâche de râteau arbitraire, vous avez des dépendances de tâches en désordre et vous devez utiliser
- trace code> pour le déboguer.
Bob, j'ai essayé de courir une tâche avec la trace, mais cela ne m'a rien dit de plus. Tout ce que j'ai découvert, c'est que quelles que soient les sorties, cela fonctionne après que mon code soit terminé.
OK ... temps de décharge de classe. Je pense que vous avez un problème avec le chargeur de fichiers agressif de ActiveSupport. Veuillez énumérer tous vos modèles que les noms de classe qualifiés de vos modèles.
peut être trouvée ici: p>
http://github.com/thoughtbot/shoulda/issues/#issue / 59 p>
Fondamentalement, n'exige pas le gemme de devoir sauf si c'est l'environnement de test (lorsque le test / unité serait déjà requis). P>
Merci pour la réponse Fowlduck. Vous étiez correct. Nous avions placé l'appel config.gem à l'intérieur de l'environnement.rb au lieu d'environnements / test.rb
Dans un projet 3.2.2, j'ai vu ce comportement (unité de test fonctionnant après certaines tâches de râteau) et que le problème était que j'ai eu le devis dans le groupe: Test,: Bloc de développement. Le déplaçant vers le: bloc de test (avec d'autres que j'avais paresseusement mis dans les deux) supprimé l'appel à l'unité de test.
Je suis arrivé à ce fichier: ~ / .rvm / Rubies / Ruby-1.9.2-Head / Lib / Ruby / 1.9.1 / MiniTest / Unité.rb
et à la ligne 498 (juste après " .Autorun ") J'ai mis: P>
return # the user of this computer put this here, because of reasons