Desidero essere in grado di impostare le variabili di ambiente nella mia app Django affinché i test possano essere eseguiti. Ad esempio, le mie opinioni si basano su diverse chiavi API.django impostazione delle variabili di ambiente nei test di unestest
Ci sono modi per override settings during testing, ma non li voglio definiti in settings.py
poiché si tratta di un problema di sicurezza.
Ho provato nella mia funzione di impostazione per impostare queste variabili di ambiente, ma ciò non funziona per dare all'applicazione Django i valori.
class MyTests(TestCase):
def setUp(self):
os.environ['TEST'] = '123' # doesn't propogate to app
quando prova a livello locale, ho semplicemente hanno un .env
file di corro con
foreman start -e .env web
che fornisce os.environ
con i valori. Ma in Django unittest.TestCase
non ha un modo (che io sappia) per impostarlo.
Come posso aggirare questo?
Hai provato a usare [EnvironmentVarGuard] (https://docs.python.org/2/library/test.html#test.test_support.EnvironmentVarGuard)? – schillingt
Sì, quella era la risposta giusta! – lollercoaster