代码之家  ›  专栏  ›  技术社区  ›  ibz

从Django测试访问Django测试服务器

  •  7
  • ibz  · 技术社区  · 17 年前

    ./manage.py testserver --addrport 7000 &
    PID=$!
    sleep 5
    ./manage.py test --no-input
    kill $PID
    

    但这很混乱(也不起作用),因为1)我需要睡眠(否则测试将在测试服务器初始化数据库之前开始),2)测试将尝试再次初始化数据库(在测试服务器已经初始化数据库之后)。

    2 回复  |  直到 17 年前
        1
  •  7
  •   Almad    13 年前

    http://code.djangoproject.com/ticket/2879

    只是,您可能会遇到有意忽略的多线程问题: http://code.djangoproject.com/ticket/10117 http://code.djangoproject.com/ticket/4513 http://code.djangoproject.com/ticket/3357

    http://devel.almad.net/trac/django-sane-testing/

    唯一的问题是,它要求您使用nose作为测试框架(与标准unittest 100%向后兼容,但如果您已经在使用其他东西……)。然后,您可以使用--with-django和--with-dangoliveserver/--with-cherrypyliveserver。不知道节俭会怎样。

    请注意:

    • 请不要用bug报告来打扰Django开发人员,你只能靠自己了
    • Windmill提供了相同的解决方案,所以如果你使用的是风车,你可能会遇到端口冲突