问题标签 [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.
django - 断言两个对象列表在 Django 测试中是相等的
有没有办法在 django 测试中检查两个对象列表是否相等。
假设我有一些模型:
我运行这个简单的测试:
这失败了:
这将起作用:
但是,这失败了:
和:
这是预期的行为吗?
编辑以回应评论
这种类型的比较有效:
为什么其他阵列的测试失败?
django - Django:多个数据库、路由器和测试框架
我目前正在为我们的 django 应用程序编写测试。可悲的是,我们不得不使用多数据库布局并且无法更改这一点。(跨多个数据中心的不同服务器上具有多个后端的分布式数据库)
我们有两个数据库:
- 带有 django 默认表的默认数据库
- 具有某些模型的应用程序数据库
对于这些模型,我们编写了不同的路由器,如 django 网站上记录的那样。现在的问题是,如果我运行 python manage.py test customerreceipts 测试框架会在几秒钟后死亡,并出现以下错误:
我检查了创建的数据库,没有表。因此,来自模型的查询会引发错误。
问题模型是(在数据库 2 中):
因为多数据库设置不支持直接链接,所以我们使用 IntegerField 作为所有者,业务逻辑处理完整性。
问题是 _choices_user() 为丢失的表设置查询。我不明白为什么 django 在第一次运行时没有创建表 auth_user 。如果我删除带有导致模型的应用程序,则测试框架可以正常工作。
有什么想法可以解决这个问题吗?
谢谢!
编辑:我创建了一个数据库设置并尝试了同样的事情。可悲的是它抛出了同样的错误!我现在很困惑。有人也可以测试一下吗?使用 _choices_user 方法创建模型并运行测试。
django - Django Test - 如何使用特定应用程序的不同设置文件运行测试?
我有一个项目,在这个项目中我有不同的应用程序。问题是,一个特定的应用程序是同一个项目中的另一个网站,并使用不同的设置文件。
当我分开运行测试时,它运行良好,当我尝试一起运行所有测试时,使用不同设置文件的应用程序失败..
知道如何解决吗?
我试图将设置覆盖到 setUp 方法中,如下所示:
当我这样做时,适用于特定网站,但不适用于其他应用程序..
任何想法?
django - 反向 FK 模型妈妈食谱
我正在使用带有 Django 测试的model_mommy来创建对象。我在创建具有反向 FK 的模型时遇到问题。作为一种解决方法,我可以用相反的方式来做,但是虽然它有效,但它看起来并不正确,所以我想知道我是否可以反过来做?
假设我有两个模型,用户和配置文件,通过从配置文件到用户的 FK 相关联(它不是一对一的,它只是一个 FK)。Profile 模型有一个布尔属性调用 is_aardvark。
在模型妈妈中,我可以创建如下食谱:
然后我可以在我的测试中使用 aardvark 配置文件创建一个用户,例如:
这似乎不对,因为我正在通过 aardvark_profile 配方创建用户。理想情况下,我想通过某种用户配方创建一个用户(也许将来我会有一些其他模型 FKd 给用户,所以上面的方法不起作用)。
我已经尝试过以下方法,但不起作用:
这甚至可能吗?有任何想法吗?如果一切都失败了,我可以创建一个辅助方法来为我做这件事。
谢谢!
python - 如何测试自定义 python-social-auth 管道?
因此,我创建了一个自定义管道extra_data
,用于保存从模型属性中获取的用户社交资料数据user.social_auth
。我已经对其进行了彻底的测试,但是是手动的。
如何使用常规自动测试我的自定义管道
django.test.TestCase
?如何测试正常管道是否工作?用户注册、登录等?
我确实搜索了很多,但没有找到任何相关的类似问题,更不用说教程或文档了。
更新- 我将问题作为问题发布在 github 上,发现存在用于管道测试的功能。现在我只需要弄清楚如何将它用于我的目的。
python - Python,MongoDB,Mongoengine - TypeError:字符串索引必须是整数,而不是 str
我正在构建一个 Django 应用程序,它通过 LinkedIn api 下载一些数据并将其存储到 MongoDB。我正在使用python-linkedin库。一个函数获取群组帖子并将这些帖子作为 dict 对象返回。
在测试时,我收到以下 TypeError:
这是一个返回的 dict 对象示例,表示 LinkedIn 组帖子和创建帖子的用户。
我正在尝试将这些对象存储在 MongoDB 中。这是(大部分)documents.py 文件:
这是获取帖子(预期为字典)并将其保存到 MongoDB 的函数
请注意,我在运行 Django 测试时遇到错误
这是 Django ORM + MongoDB 的限制,还是我做错了什么?
django - 使用多个数据库(MySQL 和 MongoDB)在 Django 上执行测试
我正在尝试在我正在开发的应用程序上运行测试,但我遇到了问题。该应用程序使用 2 个数据库,一个 MySQL 用于配置和关系数据,一个 MongoDB 用于其他一些非关系记录。当我正常使用它时它可以工作,因为 Y 只是 syncdb 关系数据库......但是当我尝试运行测试时,Django 正在尝试同步两个数据库然后崩溃,因为它在模型的 mongo 中出现了一些错误。有什么建议么?
这是数据库的配置:
路由器:
测试代码:
django - Django 测试客户端从查询中获取行 ID
我如何从下面的代码中的响应中打印 id。用户确实存在于数据库中。我也遇到了这个错误。
查看 get_user
错误:
django - 无法测试 django 1.7 应用程序
我正在运行Django==1.7
,psycopg2==2.5.4
但我无法运行我的任何测试。
当我尝试运行我的任何 django 测试用例(通过运行./manage test <app>
)时,我收到以下错误:
我的数据库设置非常基本:
我正在使用的用户(系统是 Ubuntu 14.04)具有完整的 postgres 管理员权限,我可以成功地手动创建/删除数据库:
我的模型迁移似乎很好 - 我可以删除数据库,成功运行迁移并且我的 Web 应用程序功能正常 - 我只是无法运行测试。
我在同一台机器上有另一个 django 1.7 项目,使用相同的基本 postgres 数据库设置,以相同的用户身份运行并且测试运行良好。
任何想法可能会阻止测试运行?