Ich habe das Dashboard Projekt jetzt komplett per Rspec und Factory Girl getestet. Dabei kam mir ein Problem auf, wenn ein  Model eine Unique Eigenschaft hat. Der Fehler kommt daher, das Factory Girl in Zusammenhang mit Rspec und Autotest die Datenbank nicht komplett löscht bei jeden Durchgang. Und dann natürlich der selbe Datensatz noch vorhanden ist.

Der Fehler sieht dann so aus :

Bis jetzt habe Ich eine wirklich sichere und einfachere Methode gefunden.  In einem Before(:each) Block, die Daten komplett selbst zu löschen. Das ganze sieht dann z.B. beim Dashboard Project für das Account Model so aus :

Dadurch werden einfach alle Account Daten vor jedem Test komplett entfernt.

Falls jemand eine bessere Lösung hat, dann schreibt mir doch einfach. Dann werde Ich den Artikel auch gerne ergänzen. Vielleicht stimmt auch irgendeine Einstellung noch nicht.

Edit

So Ich habe jetzt noch eine saubere Lösung gefunden. Einfach die Sequence Methode nutzten. Die erzeugt einfach dann immer automatisch eine neuen Wert, welcher noch nicht vorhanden ist. Account.destroy_all kann dann natürlich entfernt werden. Das ganze sieht dann so aus:

 

Page optimized by WP Minify WordPress Plugin