2012-04-06 3 views
18

Ich habe ein Projekt, in dem ich Schienen 3.2.3, rspec 2.9.0 und simplecov 0.6.1 benutze, scheinen alle die neuesten Edelsteine ​​zu sein.Wie bekomme ich Abdeckung für View-Spezifikationen mit Rspec, Rails und Simplecov?

Ich bekomme Code Coverage Ergebnisse für meine Controller und Modelle, aber nicht meine Ansichten. Ich habe versucht, indem die Gruppe in meinem simplecov Setup:

SimpleCov.start 'rails' do 
    add_group 'Views', 'app/views' 
end 

Und auch ausdrücklich sagen, ich möchte .erb Dateien enthalten:

SimpleCov.start 'rails' do 
    add_group 'Views', 'app/views/*/*.erb' 
end 

... aber keine Würfel. Die Gruppe "Ansichten" ist in meinen Coverage-Ergebnissen enthalten, aber dort sind keine Dateien aufgeführt.

Hat jemand das funktioniert?

Antwort

16

Offenbar ist die Antwort auf diese Frage ist „Sie können nicht“, aufgrund einer Begrenzung in der Standard-Rubin Abdeckung Bibliothek:

https://github.com/colszowka/simplecov/issues/38

+1

Es ist eine Schande, eine Arbeit hat sich um noch nicht gefunden worden. Irgendwelche alternativen Werkzeuge gefunden? –

+1

Gleichzeitig sollten wir versuchen, alle Logik von den Ansichten wegzubewegen und sich bei Bedarf auf Präsentatoren zu verlassen. Integration Tests und Tools wie Capybara könnte auch helfen. – Leito

+0

@AbePetrillo, ich habe keine Alternativen gefunden. Ich behandle einige davon mit Gurkentests in meiner neuesten App, aber größtenteils stimme ich der Schlussfolgerung zu, dass, wenn es etwas in meiner Sicht wert ist, getestet zu werden, es wahrscheinlich in einem Helfer sein sollte. – dpassage

Verwandte Themen