【发布时间】:2010-05-01 17:32:11
【问题描述】:
我想为我的 Google App Engine 编写一些 Python 单元测试。我该如何设置?是否有人碰巧有一些示例代码来展示如何编写一个简单的测试?
【问题讨论】:
标签: python unit-testing google-app-engine
我想为我的 Google App Engine 编写一些 Python 单元测试。我该如何设置?是否有人碰巧有一些示例代码来展示如何编写一个简单的测试?
【问题讨论】:
标签: python unit-testing google-app-engine
GAEUnit 是一个单元测试框架,有助于自动测试您的 Google App Engine 应用程序。
更新:Python SDK 现在提供了一个testbed 模块,使服务存根可用于单元测试。 Documentation here.
【讨论】:
Google 的 Python SDK 现在允许通过 unittest 模块实现这一点。更多详情here.
您可能会发现一个有用的注意事项:要实际执行测试,您应该使用 NoseGAE。在命令行中,使用:
$ sudo easy_install nose
$ sudo easy_install NoseGAE
(您也可以使用pip 进行虚拟环境安装)
然后cd 进入您应用的源目录并运行:
$ nosetests --with-gae
这将为您的应用运行所有单元测试。
【讨论】:
一种可行的解决方案是使用以下组合(如http://www.cuberick.com/2008/11/unit-test-your-google-app-engine-models.html 中所述)
【讨论】:
由于 gae 是基于 webhook 的,因此您可以轻松地为 app.yaml 中的所有相关 url 设置您自己的测试框架。您可以在开发服务器上的示例数据集上对其进行测试(使用 --datastore_path 选项启动开发服务器)并断言写入数据库或 webhook 响应。
【讨论】: