Wie stelle ich die globale Konfiguration für RSpec in Ubuntu ein?
Insbesondere bleiben --color und --format specdoc in allen meinen Projekten aktiviert (dh jedes Mal, wenn ich rspec irgendwo ausführe).
Wie stelle ich die globale Konfiguration für RSpec in Ubuntu ein?
Insbesondere bleiben --color und --format specdoc in allen meinen Projekten aktiviert (dh jedes Mal, wenn ich rspec irgendwo ausführe).
Antworten:
Wie Sie in den Dokumenten hier sehen können , besteht die beabsichtigte Verwendung ~/.rspecdarin, Ihre Optionen zu erstellen und darin zu platzieren, z --color.
Um schnell eine ~/.rspecDatei mit der --colorOption zu erstellen , führen Sie einfach Folgendes aus:
echo '--color' >> ~/.rspec
.rspecoder spec_helper.rb? @shamaoke @christoph
~/.rspecLösung ist die Portabilität. Beispielsweise verarbeitet unser CI-Server die Farbausgabe nicht sehr gut. Mit der Benutzerverzeichnis-Konfigurationsdatei können wir problemlos verschiedene Umgebungen übernehmen.
Man kann auch eine spec_helper.rbDatei in allen Projekten verwenden. Die Datei sollte Folgendes enthalten:
RSpec.configure do |config|
# Use color in STDOUT
config.color = true
# Use color not only in STDOUT but also in pagers and files
config.tty = true
# Use the specified formatter
config.formatter = :documentation # :progress, :html,
# :json, CustomFormatterClass
end
Für jede Beispieldatei muss der Helfer diese Optionen verwenden können.
.rspecDatei verweist .
color_enabledist jetztcolor
Fügen Sie Ihrer spec_helper.rbDatei die folgende Option hinzu:
RSpec.configure do |config|
config.color_enabled = true
end
Sie müssen dann in jeder *_spec.rbDatei angeben, dass diese Option verwendet werden soll.
Wenn Sie mit rake rspec-Tests ausführen, können Sie spec / spec.opts bearbeiten
Oder fügen alias spec=spec --color --format specdocSie einfach wie ich zu Ihrer ~ / .bashrc-Datei hinzu.
.rspec, da beim Einchecken in das Projekt alle anderen, die es erhalten, die gleichen Einstellungen erhalten.
.rspecDatei im Home-Verzeichnis des Benutzers (wie in meiner Antwort erwähnt) global für alle Aufrufe von rspec durch den Benutzer funktioniert. Das ist in der Tat solider als die Verwendung von Aliasen, da einige Edelsteine / andere Aliase / Werkzeuge, die der Benutzer möglicherweise verwendet, nicht unbedingt den Alias verwenden würden
Eine Sache, die Sie beachten sollten, ist die Auswirkung der verschiedenen Arten, RSpec auszuführen.
Ich habe versucht, die Option mit dem folgenden Code in spec / spec_helper.rb zu aktivieren -
Rspec.configure do |config|
config.tty = $stdout.tty?
end
Am Ende habe ich die Option ~ / .rspec verwendet, mit nur --tty als Inhalt. Funktioniert gut für mich und hält die Ausgabe unseres CI-Servers sauber.
--ttyist auch erforderlich, wenn Sie auch bei Verwendung von Pagern Farbe wünschen.