Wir haben ein isoliertes Testautomatisierungsteam, das für die Automatisierung nur watir + Gurkenfunktionaler Testfälle verantwortlich ist. Ihre Code-Basis ist nicht mit der Rails-App verbunden, an der andere Entwickler arbeiten, sondern getrennt bleiben. Wir haben bis jetzt mehrere Testfälle automatisiert, und nun haben wir einige (watir/gurke specs) Testfälle, die erfordern, dass einige Daten in db vorexistieren, so dass sie sich nur auf das Problem konzentrieren sollten, und nicht Erstellen von Daten benötigt selbst.Datenfabrik für Gurke, watir
Beispiel, wenn es überprüft werden muss, ob die Bewertung für einen Beitrag funktioniert, erfordert es, dass ein Postobjekt vorexistieren sollte, und es prüft nur die Bewertung. Und nicht das erste Post-Objekt erstellen und dann seine Bewertung überprüfen.
Was sind die besten Ansätze hier? Wie haben wir Armaturen und Fabrik-Mädchen für Schienen Unit Testing, was gibt es für Gurken-Spezifikationen? Oder sollen wir Features nur hier nutzen? Diese Tester haben möglicherweise keine Vorstellung von allen existierenden Modellen, sind sich dessen bewusst, um Fixtures über die Rails-Model-Schnittstelle nutzen zu können.
Meine Idee war, wenn wir Feature-Datei schreiben, sollte es nicht zeigen oder sprechen über jedes Modell, das Meta-Zeug aussieht. Watir/Specs-Testfälle sollten sich nur der "Web-Anwendung"/des Browsers bewusst sein, nur als die Schnittstelle, um mit der Anwendung zu sprechen/zu handeln. Sie sollten keine andere Schnittstelle (Fixture/Models) kennen. Daher sollten sie ihre eigenen Daten selbst erstellen, indem sie die einzige Schnittstelle verwenden, die sie kennen.
Noch einmal, was ich wissen will, gibt es Ruby lib/code, gegeben Tabellennamen, Spaltennamen und Werte (alle wie Fixtures yml), zusammen mit db-Parameter. Es wird einfach in db eingefügt, ohne Kontext der Schienenumgebung. Und so haben Tester, deren Umgebung von den Schienen isoliert ist, Webentwickler, die alleine arbeiten könnten. Rails Armaturen oder Fabrik Mädchen scheinen gut mit Schienen gekoppelt zu sein. Oder bin ich falsch?
Aber wer sagt, dass Factory Girl nur für rspec ist? Es funktioniert auch mit cucs. http://collectiveidea.com/blog/archives/2010/09/09/practical-cucumber-factory-girl-steps/ – Chirantan