gpt4 book ai didi

python - django selenium 无法加载本地主机

转载 作者:行者123 更新时间:2023-11-28 17:33:15 25 4
gpt4 key购买 nike

我有一个简单的测试代码:

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('http://localhost:8000')

assert 'Django' in browser.title

运行它:python3 functional_tests.py(或./manage.py test functional_tests)

Firefox 显示页面:标题:加载页面时出现问题正文:无法连接...

如果我运行:“./manage.py runserver”一切正常,我可以在我的浏览器中看到“django hello page”。另外,如果我尝试“browser.get('http://microsoft.com')”,它工作得很好。

Chrome 存在相同问题,Windows 7 x64 和 Ubuntu 14.04 x64 也存在相同问题。

Selenium 2.47.3Chrome 驱动程序 2.19

有什么线索吗?

UPD。

好的。我没有运行服务器。但我对 LiveServerTestCase 有同样的问题。

from selenium import webdriver
from django.test import LiveServerTestCase

class GeneralFunctionalTests(LiveServerTestCase):
def setUp(self):
self.browser = webdriver.Chrome()
self.browser.implicitly_wait(3)

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

def test_can_navigate_site(self):
self.browser.get('http://localhost:8000')
assert 'Django' in self.browser.title

谢谢!

最佳答案

案例 1:访问 'http://localhost:8000' 而不运行 Django 服务器

在第一种情况下,浏览器试图访问本地主机上的 url。这需要同时运行 Django 服务器,以便浏览器正确打开 url。由于您没有同时运行 Django 服务器,因此您会收到消息 Unable to connect ..

案例 2:在运行 Django 服务器的同时访问 'http://localhost:8000'

当你同时运行 Django 服务器时,浏览器将能够访问本地主机 url,因为有一个服务器运行在端口 8000 上,它将监听来自浏览器的请求。因此,您可以看到 Django Hello Page

案例 3:访问​​ 'http://microsoft.com

使用 selenium 访问 Microsoft 的 网站也是如此。他们端有一个服务器在监听对 http://microsoft.com 的请求,因为页面已加载。

您还可以做什么?

您还可以使用 LiveServerTestCase供测试用。

来自docs:

it launches a live Django server in the background on setup, and shuts it down on teardown.

关于python - django selenium 无法加载本地主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32828943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com