问题标签 [django-tests]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1410 浏览

django - Django 1.7 ImageField 表单验证

我正在使用 Django 1.7 和 Python 3.4 编写单元测试。当file_data元素被注释掉时,下面的表单验证良好。包含file_data它不会验证并且测试失败。

类似的代码适用FileField于在我网站的其他地方上传测试。在 shell 中运行代码我得到以下信息form.errors'Upload a valid image. The file you uploaded was either not an image or a corrupted image.'因此我认为问题出在contentorcontent_type字段中。我已尝试在此答案中使用图像作为字符串,但无济于事。[编辑:图像作为字符串的方法实际上是答案,但我一定实施得很糟糕。接受的答案被验证为有效。]我在SimpleUloadedFile 源代码中找不到任何线索。

该表格在现实中工作正常,但我想确保它包含在未来维护的工作测试中。理想情况下,我希望避免必须存在实际test.jpg文件,因为图像在我的.gitignore文件中,我不想开始破解目前非常顺利的自动化部署。

我应该提供什么输入才能SimpleUploadedFile正确验证?

0 投票
1 回答
3246 浏览

python - 处理 Django 单元测试用例中的可选 url 参数

我创建了一个带有可选参数的动态网址

例如,如果我的 url 是www.example.com/getTest/1/ 现在1url 中的 this 是可选的,要在我使用过的视图中处理这个 None like

因此,如果 URL 中没有 id,那么该功能仍然适用于我。但是我在单元案例中对此进行测试时遇到了问题。如果我使用 url 因为url = reverse('yescourse:academypage_url', args=[None])它给了我错误

NoReverseMatch: Reverse for 'academypage_url' with arguments '('new', None)' and keyword arguments '{}' not found.

所以请告诉我如何在测试用例或反向中处理这些可选 url。

编辑 :

0 投票
2 回答
167 浏览

python - 运行测试时 Django 1.7.1 自定义字段失败

我刚刚将我的 Django 1.6.5 项目升级到 Django 1.7.1。我按照记录的步骤从 South 迁移到 Django 1.7.1,它运行良好。

我遇到的问题是当我在我的项目上运行“python manage.py test”时,它失败并出现错误:

我相信这是由于我使用自定义字段将日期/时间字段存储为数据库中的时间戳整数。代码是:

即使我从项目中删除所有单元测试也会发生这种情况。有谁知道是什么原因造成的?在升级到 Django 1.7.1 之前它运行良好。

0 投票
1 回答
807 浏览

python - django urlresolver 抛出错误

我创建了一个 Django 项目foo

views.py中,我创建了两个基于类的视图HomePageListPage 路由配置,如下所示urls.py

引发错误:

这里出了什么问题?默认根 url '/' 正在解析,但 'list' 没有解析

0 投票
1 回答
1650 浏览

python - Django,测试重定向到外部页面

我的 Django 应用程序中有一个路由规则,用于重定向到外部 CDN 的下载。我现在正在为我的应用程序编写测试,并且我想测试该路由是否成功重定向到我的 Django 设置中配置的 url。这是一个简化的示例,应该有助于解释我正在尝试做的事情:

现在这不起作用,即使我在此方法中打印 settings.DOWNLOAD_URL 它是正确的,重定向也会得到 404,并且复制/粘贴到浏览器中证明它有效。我开始研究为什么它不起作用,我在 Django 源代码中注意到了这一点:

请注意,assertRedirects 不适用于外部链接,因为它使用 TestClient 进行请求。

那么,如何测试这些重定向?我不是在寻找任何超级花哨的东西,我希望检查的是响应的 status_code 和位置。我看到响应有一个跟随参数,并尝试了这样的东西,但它仍然没有工作:

有人要求我包含我的 urls.py 和 views.py 中的相关部分,它们是:

任何解决此问题的帮助将不胜感激。提前致谢。

0 投票
1 回答
284 浏览

python - 如何让我的测试夹具仅在 Django 中进行测试时加载?

我有一个带有生产装置和测试装置的 Django 项目。如何仅在运行测试时加载测试夹具?

0 投票
1 回答
100 浏览

django - 从tests.py调用数据库表

我有以下内容tests.py

应该像在我的代码的其他区域一样,调用sugarcrm 数据库并访问相关表。但是,由于某种原因,在 tests.py 文件中,test_会在名称之前插入:

模型.py

如果我把这段代码放在外面def,它工作正常,

0 投票
1 回答
1187 浏览

python - Django:如何将用户与请求工厂相关联

我正在为 Django 网站上的表单编写一些测试。我想测试登录用户是否能够使用假设输入正确的表单。为此,我正在使用 Django 请求工厂。我似乎无法让我的测试用户登录。那,或者我什至没有正确地提出请求。我不确定。相关代码如下:

该请求必须认为用户已登录,否则测试的其余部分将不起作用。这不会引发任何错误,但我什至不确定我response是否正确使用了请求。我是否正确地告诉测试“以该用户的身份向锦标赛页面发出发布请求,并尝试提交套牌”?

0 投票
1 回答
3051 浏览

django - “无法使用提供的凭据登录”(在测试中)

我正在为用户注册和登录编写一个测试用例,我测试了 whit postman (chrome) 并且它可以工作,但测试用例没有。我djangorestframework-jwt用于身份验证

测试:

结果:

非常感谢你帮助我:)

0 投票
2 回答
739 浏览

django - django test client doesnt call POST, but GET

I try to test view calling by POST. I use follow=True. But test client uses GET method and my POST data are not passed.

here is my view:

Here is my test:

When the view is called. It is not POST, but GET used and my POST params are empty of course. Can somebody say why its happened?

EDIT: I made a clean venv with fresh Django. And it works as expected(calls POST) Looks like there is something rotten in the state of Denmark.