相关疑难解决方法(0)

运行 django 测试时如何修复“TypeError:'ConnectionHandler'类型的参数不可迭代”?

当我在我的用户应用程序中执行 ```python -m unittest`` 时,我收到此错误:

TypeError: argument of type 'ConnectionHandler' is not iterable
Run Code Online (Sandbox Code Playgroud)

我正在 django 中自定义我的 User 模型,我想对其进行测试。我已经进行了迁移并且自定义 User 模型运行良好(我使用了一个新数据库),所以我希望能够成功运行测试。这是我的测试代码:

from django.test import TestCase
from django.contrib.auth import get_user_model

# Create your tests here.
class UsersManagersTests(TestCase):

    def test_create_user(self):
        User = get_user_model()
        user = User.objects.create_user(email='normal@user.com', password='foo')
        self.assertEqual(user.email, 'normal@user.com')
        self.assertTrue(user.is_active)
        self.assertFalse(user.is_staff)
        self.assertFalse(user.is_superuser)
        try:
            # username is None for the AbstractUser option
            # username does not exist for the AbstractBaseUser option
            self.assertIsNone(user.username)
        except AttributeError:
            pass
        with self.assertRaises(TypeError):
            User.objects.create_user()
        with self.assertRaises(TypeError):
            User.objects.create_user(email='')
        with self.assertRaises(ValueError):
            User.objects.create_user(email='', …
Run Code Online (Sandbox Code Playgroud)

django python-3.x django-unittest django-custom-user

5
推荐指数
1
解决办法
3531
查看次数

如何在 vscode 中调试单个 Django 测试?

我添加了一个启动配置,允许我在 Django 中运行所有测试,另一个允许我运行服务器,这两个都可以正常工作。

我正在寻找一种调试单个文件的方法,但是${file}在参数中使用给出了 django 不喜欢的正常路径。

我想要一种更改${file}为 python 路径的方法,以便我可以在单个文件上调试我的测试。

python manage.py test --noinput --keepdb python.path.to.my.file

在命令行中工作。

下面的配置好像差不多:

      {   "name": "Test File",
            "type": "python",
            "request": "launch",
            "program": "${workspaceFolder}/manage.py",
            "args": [
                "test",
                "--noinput",
                "--keepdb",
                "${file}"
            ],
            "django": true
        }
Run Code Online (Sandbox Code Playgroud)

但是,当我运行此配置时出现错误,我认为这是因为 ${file}变成

path/to/my/file而不是path.to.my.file.

python django visual-studio-code vscode-debugger

3
推荐指数
4
解决办法
2888
查看次数