여러 환경 변수에 의존하는 장고 앱에 대한 테스트를 작성하기 시작했습니다. 셸에서 테스트 할 때 OS를 가져오고 변수를 지정하면 테스트가 정상적으로 작동합니다. 그러나, 내가 tests.py에 넣었을 때, 나는 그 변수가 발견되지 않았기 때문에 여전히 주요 오류를 얻는다. 내 검사는 다음과 같습니다.환경 변수가있는 장고보기 테스트
from django.utils import unittest
from django.test.utils import setup_test_environment
from django.test.client import Client
import os
os.environ['a'] = 'a'
os.environ['b'] = 'b'
class ViewTests(unittest.TestCase):
def setUp(self):
setup_test_environment()
def test_login_returning_right_template(self):
""" get/should return login.html template """
c = Client()
resp = c.get('/')
self.assertEqual(resp.templates[0].name, 'login.html')
변수를 초기화하는 데 잘못된 위치입니까? 나는 setUp에서 그것을 시도했지만, 같은 결과로 - 그들은 발견되지 않는다. 테스트 스위트를 실행하기 전에 환경 변수를 초기화하는 방법에 대한 제안 사항은 무엇입니까? 감사합니다. 루카
당신의 문제의 원인은보기에서 os.envior에 의존하는 것이 나쁜 일이라는 것입니다. –