2011-08-25 97 views
1

我的Django网站有两个应用程序 - AuthorsBooks。我的Books应用程序有一个模型,该模型在Authors中有一个模型的外键。我对Authors应用程序进行了一些测试,测试我的所有模型和管理器,并且工作正常。然而,我的应用程序Books需要Authors应用程序的一些数据才能正常工作。坚持跨应用程序的测试数据

我可以指定我的测试运行的顺序,并从应用Authors生成的测试数据保存,这样我可以测试我的Books应用具有内部消除其上产生从Authors应用数据的测试进行复制。

我可能会做这一切都是错误的。我是吗?

谢谢。

回答

0

创建一个fixture包含您需要的测试数据。然后,您可以为AuthorsBooks测试加载相同的数据。

有关详细信息,请参见docs on Testcase.fixuresIntroduction to Python/Django tests: Fixtures

+0

我认为fixtures对于简单的单元测试很好,但我认为它不能满足我在编写大集成测试时的目的。我正在使用请求模块向我的应用程序发出请求,然后检查是否已将正确的数据输入到数据库中,检查表单是否验证了所有内容等。因此,这不是一个简单的测试,只是测试Model或经理,但它测试了从URL配置,视图,表单,经理和模型,即整个堆栈的所有内容。希望我已经够明确了。谢谢Shawn。 –