Kasety magnetowidu służą jako oprawa testów. Musisz je zatwierdzić w repozytorium, w przeciwnym razie twoje testy nie będą działać poprawnie na innych komputerach, lub tylko tam, gdzie jest duża zewnętrzna zależność, która jest naruszeniem zasady testowania.
Oczywiście musisz ukryć swoje dane uwierzytelniające od publiczności lub zespołu, zachowując powyższe.
Rozwiązaniem są filter_senstive_data
ustawienia i klejnot figaro.
Na początku This answer from Myron in a similar question może rozwiązać Twój problem w znacznym stopniu.
Aby skonfigurować magnetowidu
VCR.configure do |c|
c.filter_sensitive_data("<SOMESITE_PASSWORD>") do
ENV['SOMESITE_PASSWORD']
end
end
Powyższy fragment kodu skopiowany z odpowiedzią Myrona bo chcę dodać więcej później
Więcej informacji na temat tego ustawienia, sprawdź doc https://relishapp.com/vcr/vcr/v/2-5-0/docs/configuration/filter-sensitive-data
Teraz, dla ENV['SOMESITE_PASSWORD']
, może to być prawdziwe poświadczenie przy użyciu Figaro gem.
Instalacja Figaro utworzy plik config/application.yml
i doda go do .gitignore
. Możesz więc wprowadzić swoją nazwę użytkownika i hasło, nie ryzykując przeciekania jej do publicznej wiadomości.
FWIW, autor magnetowidu zatwierdza kasety: https://twitter.com/myronmarston/status/199887944570503168. Jest przez niego wpis, w którym bardziej szczegółowo go opisuje, ale nie mogę go znaleźć. – Dennis