我想为Google App Engine项目运行本地Django单元测试。 GAE最近收到了一些python unit testing utilities
,它们允许创建桩的例如memcache,数据存储,任务队列等。本地Django单元测试存根与Google App引擎
我希望能够使用Django的单元测试框架。我首先想到的是重载DjangoTestSuiteRunner
做每个测试用例如下:
# setUp
self.testbed = testbed.Testbed()
# Then activate the testbed, which prepares the service stubs for use.
self.testbed.activate()
# Next, declare which service stubs you want to use.
self.testbed.init_datastore_v3_stub()
self.testbed.init_memcache_stub()
# ... after tests:
#
# Teardown
self.testbed.deactivate()
我想知道是否有人试图用可以从命令运行新的单元测试运行Django的测试框架GAE线路,如果有的话,他们遇到了什么陷阱。例如,调用Django的django.test.utils.setup_test_environment
和teardown_test_environment
有什么问题吗?还会出现其他什么问题?
顺便提一句,我没有使用任何Django-GAE助手,如google-app-engine-django。
谢谢您的阅读。
谢谢,Oleksiy。顺便说一下,我认为可能会导致问题的代码在这里(特别是数据库问题):https://code.djangoproject.com/browser/django/trunk/django/test/testcases.py – 2011-06-01 12:09:34
它看起来像[GAE测试平台](https://github.com/jgeewax/gaetestbed)正在成为官方Python App Engine SDK的一部分。它与您提到的GAE本地测试应用相同。我所要做的就是在我的'test.py'中使用'TaskQueueTestCase'作为基类,它为我完成了所有'setUp'魔术。 – Oleksiy 2011-06-01 15:59:43