“WebDriverException:消息:'chromedriver'可执行文件需要在django LiveServerTestCase中的路径中可用”

时间:2015-03-03 12:11:53

标签: python django selenium unit-testing

我正在用LiveServerTestCase制作django单元测试用例。我正在尝试使用硒。

我写了以下tests.py。

from django.test import LiveServerTestCase
from selenium.webdriver.chrome.webdriver import WebDriver

class TestChronology(LiveServerTestCase):
    fixtures = ['user-data.json']
    @classmethod
    def setUpClass(cls):
        # cls.selenium = webdriver.Chrome(executable_path='D:\jatin\chromedriver.exe')
        cls.selenium = WebDriver()
        super(TestChronology, cls).setUpClass()

    @classmethod
    def tearDownClass(cls):
        cls.selenium.quit()
        super(TestChronology, cls).tearDownClass()

    def test_login(self):
        self.selenium.get('http://127.0.0.1:8000/login/')
        username_input = self.selenium.find_element_by_name("username")
        username_input.send_keys('myuser')
        password_input = self.selenium.find_element_by_name("password")
        password_input.send_keys('secret')
        self.selenium.find_element_by_xpath('//input[@value="Log in"]').click()

我在同一路径中有chromedriver.exe,我也把它放在C:\ Python27 \ Scripts中并设置环境变量。虽然它给出了错误。

我正在运行此命令

python manage.py test

如果我将这个tests.py文件保存在项目外部并使用以下命令运行它,

python tests.py

它运行完美,也可以打开Chrome浏览器。

所以任何人都可以解决这个问题或提出任何建议吗?

0 个答案:

没有答案