Django测试使用Selenium包错误

时间:2018-01-02 14:43:17

标签: python django selenium selenium-webdriver

我想使用Selenium包创建一些Django测试。

以下是简单测试:

import unittest
from selenium import webdriver

class TestSignup(unittest.TestCase):

def setUp(self):
    self.driver = webdriver.Firefox()

def test_signup_fire(self):
    self.driver.get("http://localhost:8000/add/")
    self.driver.find_element_by_id('id_title').send_keys("test title")
    self.driver.find_element_by_id('id_body').send_keys("test body")
    self.driver.find_element_by_id('submit').click()
    self.assertIn("http://localhost:8000/", self.driver.current_url)

def tearDown(self):
    self.driver.quit

if __name__ == '__main__':
    unittest.main()

但我接受了这个错误:

TypeError: environment can only contain strings

在这一行:

self.driver = webdriver.Firefox()

我不知道为什么,知道如何修复此错误?

1 个答案:

答案 0 :(得分:0)

正如您所看到的错误:

self.driver = webdriver.Firefox()

在行中:

geckodriver

这实质上意味着在更新环境变量中的路径时会出现一些配置错误。要禁止您可以使用self.driver = webdriver.Firefox(executable_path=r'C:\path\to\geckodriver.exe') 二进制位置提供参数,如下所示:

{{1}}