2010-06-17 12 views
7

I mit einem Bit einer Blutungskantenschienen app arbeiteten. Schienen 3, RSpec 2, Rspec-Rails2.rcov mit RSpec-2

Es scheint, als ob RSpec2 umfasst nicht die Spezifikation: rcov Rake Aufgabe, die RSpec 1 hat. (Zumindest ist es noch nicht da)

Hat jemand kein Glück hatte rcov mit rspec 2 ausgeführt wird, oder ihre eigenen Rechen Aufgabe zu schreiben, um diese Arbeit zu machen?

+0

rspec-Schienen-2.0.0.rc hat diese Aufgabe in der rspec Rake-Datei. – wesgarrison

Antwort

7

Versuchen in Optionen Bestehen der Edelstein-Verzeichnis auszuschließen. Oder da Ihre Laufschienen die Schienen Flag verwenden:

desc "Run all specs with rcov" 
RSpec::Core::RakeTask.new(:rcov => spec_prereq) do |t| 
    t.rcov = true 
    t.rcov_opts = %w{--rails --exclude osx\/objc,gems\/,spec\/,features\/} 
end 
+0

genau das habe ich getan. Vielen Dank. – JoshReedSchramm

+3

Wo soll das leben? – Aupajo

+1

@Aupajo: Von JoshReedSchramm Antwort unten, wo er eine frühere Iteration dieser Antwort hatte, legte er es in '~ /. Rvm/Rubine // Lib/Ruby/Gems // Gems/Rspec-Rails-2.XXXXX/lib/rspec/rails/tasks/rspec.task' – wesgarrison

0

kam mit dieser -

1) Öffnen ~/.rvm/Rubine // lib/Rubin/Edelsteine ​​// Edelsteine ​​/ rspec-Schienen-2.XXXXX/lib/rspec/rails/Aufgaben/rspec .task in Ihrem Lieblings-Editor.

2) Fügen Sie diese Rake Aufgabe

desc “Run all specs with rcov” 
RSpec::Core::RakeTask.new(:rcov => spec_prereq) do |t| 
    t.rcov = true 
end 

Ein herausragendes Problem. Es führt rspec auf jeder Spezifikation sowohl in meinem Rvm-Installationsordner als auch in dem Projekt aus, in dem ich bin, wenn ich die Aufgabe ausführe. Ich kann nicht herausfinden, wie man all diese rvm Installationstests ausschließt. Wenn jemand eine Idee hat, lass es mich wissen.

4

Wenn Sie Ruby 1.9x geschehen zu sein, ich habe gerade CoverMe (eine rcov-ish lib, die unter 1.9 funktioniert) arbeiten. Snappy und funktioniert mit RSpec aus der Box - so ziemlich ein Plug-and-Play-Setup. Es macht nur leise/Coverage Zeug jedes Mal, wenn Sie Rake laufen: spec. Dachte, ich würde es erwähnen, da ich 1.9.2preview3 auf meinem blutenden Rand Zeug laufen und es ist möglich, dass Sie auf einige 1.9 Probleme stoßen, wenn Sie es verwenden.

2

Wir verwenden simplecov bei der Arbeit, und es einfach und effektiv finden. Ich finde, dass es eine sauberere Lösung ist, als die rspec-Quelle direkt zu ändern, besonders wenn Sie sich um CI-Server kümmern müssen.

+1

Heute (21.08.2012) ist das ziemlich genau die richtige Antwort.Als diese Frage gestellt wurde, war rspec2 neu, simplecov existierte noch nicht. – JoshReedSchramm

+2

simplecov funktioniert nur in 1.9. *. Rcov funktioniert nur in 1.8. *. Sie können simplecov nicht wirklich verwenden, wenn Sie auf 1.8 stehen – yiwen

Verwandte Themen