Comment puis-je obtenir un ENV jeu de variables pour rspec?
Je suis en utilisant le contremaître pour le démarrage de mon rails serveur de développement. C'est chouette ce que je peux mettre tous mes variables d'environnement dans le .env
fichier. Est-il un moyen de faire quelque chose de similaire pour mon environnement de test?
Je veux mettre une clé API que je vais utiliser avec le vcr
gem, mais je ne veux pas ajouter l'API de contrôle de version. Toutes les suggestions en plus de définition de la variable d'environnement manuellement, lorsque je démarre mes tests script?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le dotenv gem --- ça va fonctionner de la même comme contremaître et de la charge à partir d'un .fichier env. (et une .env.fichier de test pour vos environnements de test)
https://github.com/bkeepers/dotenv
RAILS_ENV=test foreman run bundle exec rspec spec
Si vous avez juste besoin de définir des variables d'environnement, vous pouvez les définir à partir de la ligne de commande:
Ou vous pouvez définir les éléments suivants en haut de votre Rakefile ou spec_helper.rb.rb:
S'ils ne sont pas toujours s'appliquer, vous pouvez utiliser un conditionnel:
Si vous souhaitez utiliser un Contremaître
.env
fichier, ce qui ressemble à:et de le transformer en le suivant et eval c':
Que vous pourriez faire:
bien que je ne pense pas que cela fonctionnerait pour le multi-ligne valeurs.
Et comme @JesseWolgamott noté, il semble que vous pouvez utiliser
gem 'dotenv-rails'
.gem
spécialement lors de l'utilisation minimaliste des frameworks commeSinatra
. Merci!Une option est de faire un alias de la rspec commande pour être un peu plus précis. Mettre la ligne suivante dans vos fichiers de configuration utilisateur (
.bashrc
ou.profile
ou quelque chose).Une autre option est de mettre les variables d'environnement spécifiques .env fichiers:
À l'aide de la
dotenv
gem fonctionne ou vous pouvez les mettre en manuellement