Итак, я знаю, что когда в настройках Django для DEBUG установлено значение False, Selenium не может получить доступ к статическим файлам, в результате чего получается что-то вроде:
Однако, когда я запускаю свои тесты Selenium, они могут взаимодействовать с DOM и выбирать элементы из выпадающего списка!У меня есть тестовый код
from selenium.webdriver import Chrome
from selenium.webdriver.support.ui import Select
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from urllib.parse import urljoin
import time
driver = webdriver.Chrome()
driver.get("localhost:8000/")
time.sleep(3)
driver.find_element_by_id('select-dance').click()
select = Select(driver.find_element_by_xpath('//*[@id="select-dance"]'))
select.select_by_value('1')
driver.find_element_by_id('select-date-range').click()
select = Select(driver.find_element_by_xpath('//*[@id="select-date-range"]'))
select.select_by_value('1')
driver.find_element_by_id('location').click()
Когда я установил для DEBUG значение True, страница отобразится так, как я хочу, потому что у нее есть доступ к статическим файлам.Но всякий раз, когда я пытаюсь запустить тесты, я всегда получаю сообщение об ошибке
selenium.common.exceptions.ElementNotVisibleException: Message: element not interactable
Это происходит для любого элемента, на который я ссылаюсь.По какой-то причине, когда я пытаюсь щелкнуть по раскрывающемуся списку напрямую, он всегда выделяет этот ввод, а тег выбора всегда кажется «скрытым», поэтому мне интересно, может ли это быть причиной ошибки
Спасибо всем за помощь, я не знаю, почему Selenium не разрешен прямой доступ к тегу выбора для выпадающего списка.