RSS - Testen abonnieren

Testen

Cucumber und Factory-Girl-Steps

Gespeichert von jens am/um 12. Dezember 2011 - 16:15

Factory Girl enthält seit einiger Zeit ein paar hilfreiche Definitonen für "Steps" von Cucumber. Damit diese jedoch ordnungsgemäß funktionieren, müssen sie nach(!) den eigenen Factories eingebunden werden. Dazu legt man einfach die Datei features/support/factory_girl.rb mit folgendem Inhalt an.

Rails Tests, Factory Girl, Assoziationen und ActiveRecord Callbacks

Gespeichert von jens am/um 23. November 2011 - 16:43

Beim Testen mit Factory Girl kam mir heute eine Fehlermeldung unter, die durch ein Callback verursacht wurde. Ein Modell erzeugte nach dem Anlegen ein zugehöriges Modell direkt via after_save :create_B. Die problematische Factory sah so aus:


  factory :B do
    association :blabla, :factory => :A
    firstname "Max"
    lastname "Mustermann"
  end

Die Fehlermeldung lautete: ActiveRecord:RecordInvalid: A bereits vergeben!

Testen von Railsprojekten unter TeamCity mit Ruby 1.9

Gespeichert von jens am/um 13. März 2011 - 7:27

Nach dem Umstieg auf Rails 3 und Ruby 1.9.2 wurden unter TeamCity nicht länger die einzelnen Tests angezeigt, sondern nur noch ein "vielsagendes" Success (s. Ticket).

Um das Problem zu lösen ist es notwendig, explizit das Gem 'test-unit' zu installieren und in seinem Projekt zu referenzieren.

Der entsprechende Abschnitt im Gemfile könnte so aussehen:


group :development, :test do
  gem 'nifty-generators'
  gem 'mocha'
  gem 'test-unit'
end

TeamCity und JSTestDriver (Headless)

Gespeichert von jens am/um 3. November 2010 - 19:47

Mit dem Framework JSTestDriver steht endlich eine Testumgebung für Javascript zur Verfügung, die sich gut in CIS-Systeme wie z.B. TeamCity einbinden läßt.

TeamCity, Django und Tests

Gespeichert von jens am/um 11. Januar 2010 - 18:44

Wer TeamCity nutzt und mal was mit Django macht, der ärgert sich sicherlich, daß TeamCity per se nur Java unterstützt und es kein offizielles Plugin für Python gibt.

Dem kann jedoch Abhilfe geschaffen werden.