Próbuję sobie zrobić testy Seleniumowe w Django, korzystam do tego z LiveServerTestCase https://docs.djangoproject.com/en/2.1/topics/testing/tools/#django.test.LiveServerTestCase
I mam pewien problem. Z tego co rozumiem, klasy Live(/Static)ServerTestCase powinny stawiać klienta na którego w testach mogę sobie robić zapytania, ale kiedy robię request na "główny" endpoint ("/") jak poniżej, to dostaję 500 Internal Server Error. Ktoś wie o co może chodzić?
Mój kod:
class TestMostCommonUserActions(StaticLiveServerTestCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
cls.selenium = webdriver.Chrome()
cls.selenium.implicitly_wait(10)
@classmethod
def tearDownClass(cls):
cls.selenium.quit()
super().tearDownClass()
def test_page_rendered(self):
# tutaj jest problem
self.selenium.get(self.live_server_url)
# Jak odpalę sobie komendą runserver i odpytuje na zwyklym porcie, to oczywiście chodzi.
self.selenium.get("http://127.0.0.1:8000/")
Trzeba jeszcze jakieś settingsy pod to ustawić, czy o co może chodzić?
Wyżej w kodzie mam jedynie oprócz tego kodu importy i ustawienie os.environ["PATH"] tak, zeby znajdowało sterownik przeglądarki, więc to już raczej nie ma wpływu.
Końcowym efektem który chciałbym uzyskać jest możlowość zamokowania w takim teście pewnych funkcji (np. wysyłanie do AWSa) i zrobić taki prawie, że E2E test.