我想一起使用pytest
,pytest-django
和pytest-selenium
来测试我的Django应用程序功能。如果我使用python manage.py runserver
手动启动服务器,然后手动输入URL,则可以正常工作。
来自live_server
的pytest-django
固定装置应该在我可以使用的后台启动服务器进程,但是它不起作用。我没有通过测试,而是得到“在此服务器上找不到请求的资源”。
这是我文件的相关部分:
pytest.ini
[pytest]
DJANGO_SETTINGS_MODULE = chatsite_api.settings.test
addopts = --liveserver localhost:8080 --cov=. --cov-report=html --driver Firefox
test_pages.py
import pytest
def test_homepage(selenium, live_server):
selenium.get(live_server.url)
assert "Django: the Web framework" in selenium.title
还有chatsite_api.settings.test.py
from .dev import * # NOQA
DATABASES = {"default": {"ENGINE": "django.db.backends.sqlite3", "NAME": ":memory:"}}
DEBUG = True
就像我说的那样,当我自己启动服务器时,测试运行良好,但是live_server固定装置似乎并没有达到预期的效果。我已经验证了是否根据pytest.ini中的live_server.url
行设置了addopts
,但是据我所知。
参考方案
如果要针对默认索引页(带有“安装成功!祝贺您!”的页面)进行测试,则只有在使用DEBUG = True
运行开发服务器时才会显示该页面。特别是,它不会出现在测试中。如果要使用该视图,则需要像其他视图一样在urls
模块中显式配置它:
# urls.py
from django.urls import path
from django.views.debug import default_urlconf
urlpatterns = [
path('', default_urlconf, name='index'),
]
Python GPU资源利用 - python我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…
Python sqlite3数据库已锁定 - python我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…
将Django博客项目集成到HTML网站中 - python我有一个经常使用HTML5,CSS3,JQUERY和静态图像的网站。我也有一个用Django编写的Blog,我想将其集成到网站中。我对Django真的很陌生,所以我想知道哪种方法是最好的使用方法。我应该将网站代码集成为Django项目的一部分,还是有其他解决方案?谢谢! 参考方案 您有2种方法将当前站点与Django集成。1)您可以使用API编写Django…
如何在Django中解决模块名称冲突? - python创建Django应用程序时出错:python端发生错误。退出代码:1,err:CommandError:'untitled1'与现有Python模块的名称冲突,因此不能用作项目名称。请尝试使用其他名称。 python大神给出的解决方案 您正在使用哪个版本的python?升级您的django版本或降级您的python版本,这应该可以解决问题。您可以在cl中执行…
从Django的角度来看,“应用程序”如何工作? - python首先,问题是技术性的,而不是概念性的。文档在不同地方提到您应该将INSTALLED_APPS应用程序的根模块放入其中。但是,该模块应该包含什么?按照惯例,startapp myapp创建的大多数文件都在那里。例如,urls, views, admin文件是从其他模块通过完全限定名称导入的,并且实际上可以在任何地方,因此它们只是约定。在django逻辑中似乎唯…