如何在PyDev中运行单个Django测试

时间:2019-01-02 15:13:01

标签: python django unit-testing pydev

PyDev使您可以通过上下文菜单轻松运行各个Python单元测试:右键单击测试名称,运行方式-> Python单元测试

但是,在Django项目中,无法使用相同的功能,因为默认的测试运行程序在运行测试之前不会加载Django应用程序(因此我们会收到异常AppRegistryNotReady: Apps aren't loaded yet.)。

PyDev可以在Django项目中运行所有测试(右键单击该项目-> Django -> 运行Django Tests(manage.py测试) ),但对于大型项目可能要花费相当长的时间。我需要一个UI来直接调用manage.py test myapp.tests.FooTest.test_creation

是否可以在PyDev中运行单个Django单元测试?

1 个答案:

答案 0 :(得分:1)

我认为最好的选择是将pytest与https://pytest-django.readthedocs.io/en/latest/一起使用(然后,在PyDev内转到首选项SELECT t1.customer_id, t1.firstname, t1.lastname, t2.tag1, t2.tag2, t2.tag3, t2.tag4 -- increase until you reach your maximum number of tags. FROM table1 t1 LEFT OUTER JOIN ( SELECT * FROM ( SELECT customer_id, tag, ROW_NUMBER() OVER ( PARTITION BY customer_id ORDER BY tag, id ) AS rn FROM table2 ) PIVOT ( MAX( tag ) FOR rn IN ( 1 AS tag1, 2 AS tag2, 3 AS tag3, 4 AS tag4 -- increase until you reach your maximum number of tags. ) ) t2 ON ( t1.customer_id = t2.customer_id ); ,然后选择PyDev > PyUnit作为测试运行程序)。

就位后,您应该可以从PyDev运行单个单元测试。

ie:在打开测试文件的编辑器中,使用Py.test(或向下)导航到所需的测试,然后使用Ctrl+Shift+Up(然后选择{{1 }}进行测试)。

或者,您也可以按Ctrl+F9并通过键入要运行的方法的名称进行过滤。