【发布时间】:2019-03-18 01:05:21
【问题描述】:
所以我知道,当我将 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 直接访问下拉的选择标签。
【问题讨论】:
标签: python django selenium selenium-webdriver