Django、防火墙、Selenium、[Errno 10061] 和 implicitly_wait()

Django, Firewalls, Selenium, [Errno 10061], and implicitly_wait()

所以,我对这个很好奇。

我一直在尝试使用 Django 进行 TDD,并从 Harry J.W 那里得到了锻炼。 Percival的书,如下:

from selenium import webdriver
import unittest

class NewVisitorTest(unittest.TestCase):

    def setUp(self):
        self.browser = webdriver.Chrome()

    def tearDown(self):
        self.browser.quit()


    def test_can_start_list_and_retrieve_later(self):
        self.browser.get('http://localhost:8000')
        self.browser.implicitly_wait(3)

        self.assertIn('Django', self.browser.title)

看起来很简单。 除了我得到这个失败的测试:
error: [Errno 10061] No connection could be made because the target machine actively refused it

所以我相信我已经安装了某种防火墙(如果您能指导我,我将不胜感激)。然而,最奇怪的是: 如果我 运行 省略了这一行的脚本,但是: self.browser.implicitly_wait(3)

测试奇怪地通过了。

当我测试失败时,Django 会说以下内容:

Not Found: /favicon.ico
[22/Feb/2016 09:34:38] "GET /favicon.ico HTTP/1.1" 404 1940

如果这有任何相关性:
OS 是 Windows 10 IDE 是 PyCharm 社区(所以 Django 在 powershell 中是 运行) 测试框架是 Unittest.py

Chrome 需要与您机器上安装的 Chrome 版本相匹配的特定驱动程序:

self.browser = webdriver.Chrome("/path/to/chromedriver")

下载 chromedrive 并将其从 https://sites.google.com/a/chromium.org/chromedriver/downloads

复制到“/path/to/chromedriver”

注意:对于 Firefox,可以使用 webdriver.Firefox()