Ben steak c'est juste deux petit helpers pour rspec. Capybara maintenant implemente la meme chose.
Oui je pense que une spec c'est aussi lisible, voir plus lisible pour un developer que un scenario cucumber. Et en plus j'écris plus vite du ruby que du "vrai" language... Donc pour moi le calcul est vite fait. 2011/9/13 Guirec Corbel <[email protected]>: > D'accord donc selon toi il y a des définitions dans cucumber qui tu > n'utilises pas vraiment ou qui test deux fois la même chose comme : > "Then I should be on the .... page" > > Est-ce que c'est ça? > > Le 2011-09-13 10:44, Yannick François a écrit : >> >> Le 9/13/11 4:14 PM, Guirec Corbel a écrit : >>> >>> As-tu un exemple de test? Quand tu dis des tests unitaires de contrôleur >>> ça veut dire, par exemple, si j'appelle le contrôleur avec tels paramètres >>> alors ça m'envoie vers tel page. Vérifies-tu si le nombre d'objets présent >>> dans la base de données a été modifié ou les messages renvoyés par le >>> contrôleur? >>> >> Non, ce que je vérifie c'est: >> - Que j'ai bien appelé tel et tel méthode sur mes modèles (avec les bon >> paramètres) >> - Le template utilisé pour le rendu >> - les objects mis à dispo pour ma vue (les variables d'instance) >> - éventuellement quelque élément du body selon les cas... >> >> Pour les exemples tu peux aller voir dans Typo >> (https://github.com/fdv/typo) j'ai refactoré quelques specs dans ce sens... >> >> Les modifications en base sont faites par les modèles, c'est donc sur le >> test des modèles que je vérifie. >> >> Ah oui, j'oubliais, j'évite autant que possible d'utiliser des méthodes >> activerecord dans mes controllers, c'est faire un trop fort lien entre >> modèle et contrôleur. Pour moi ça viol le principe de simple responsabilité: >> un contrôleur a la responsabilité de constituer les données puis de les >> donner à la vue pour qu'elle puisse faire la construction de la page, il n'a >> pas à savoir comment sont fait les modèles... Mais on s'égare sur des >> questions de design là. >> > > -- > Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de > Google Groups. > Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse > [email protected] > Pour résilier votre abonnement envoyez un e-mail à l'adresse > [email protected] -- Paul Chavard -- Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [email protected]
