2011-08-25 73 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。 –