Il y a deux choses différentes ici :
La première chose est de savoir quel cadre utiliser pour écrire les tests/spécifications. Ici, vous pouvez choisir entre Test::Unit, RSpec, Shoulda, etc. Le choix est de savoir si vous voulez faire du TDD traditionnel (Test::Unit) ou si vous préférez les autres manières de penser à la spécification du comportement préconisées par des développeurs tels que David Chemlinsky (RSpec et, dans une certaine mesure, Shoulda).
La deuxième chose est de savoir comment traiter les données de test. Il existe des fixtures Rails et des alternatives conçues avec d'autres objectifs, comme par exemple le plugin FixtureReplacement . Avant Rails 2.0, les fixations présentaient des problèmes pratiques importants et bien documentés. La plupart de ces problèmes pratiques ont été corrigés dans Rails 2.0. Cependant, les fixtures peuvent conduire à un couplage de tests par inadvertance et certaines des alternatives tentent d'éviter cela.