Тест Джанго (StaticLiveServerTestCase) возвращает 404 - PullRequest
0 голосов
/ 21 марта 2019

У меня есть проект, в котором используются Angular и Django, и я испытываю странное поведение при тестировании своего приложения с использованием StaticLiveServerTestCase и Selenium.

Когда я начинаю тестировать, кажется, что все работает, но если я обновляю главную страницу, я получаю 404. Итак, если я тестирую без базового URL, он работает, но как только Angular добавляет базовый URL, тест возвращает 404: http://127.0.0.1:8000/project/development/test

Базовый URL-адрес, определенный в Angular на index.html:

Мой URL-адрес определяется следующим образом: re_path ('test', views.index, name = 'index')

Итак, подытожив, когда я тестирую http://127.0.0.1:8000/test, это работает, но если я тестирую http://127.0.0.1:8000/project/development/test, это не так - если я запускаю свое приложение нормально, оба URL работают.

Насколько я знаю новичок, и поскольку шаблон URL определен, оба URL должны работать. Очевидно, я что-то упускаю.

Заранее спасибо.

Примечание. Тестовый класс, если он определен следующим образом:

class Tests(StaticLiveServerTestCase):

def set_chrome_options(cls):
    options = Options()
    options.add_experimental_option("useAutomationExtension", False)
    return options

@classmethod
def setUpClass(cls):
    cls.host = "127.0.0.1"
    cls.port = 8000
    super(Tests, cls).setUpClass()
    cls.selenium = webdriver.Chrome(executable_path=settings.DRIVER_PATH, options=cls.set_chrome_options(cls))
    ...

Относительно urlpatterns:

urlpatterns = [
    path('', views.index, name='home'),
    re_path('test', views.index, name='index'),
    path('project', views.index, name='index'),
    ...
...