2011-05-26 62 views
4

我一直在Zend开发典型的博客样式应用程序。到目前为止,我一直在进行最低限度的测试,但现在我需要防患于未然,并且正在对单元测试策略寻求一些建议或提示。Zend应用程序的PHPUnit测试策略

型号:

  • 为了测试模型,我一直在PHPUnit_Framework_TestCase的扩展。这似乎工作正常。
  • 我已阅读Zend_Test_PHPUnit_DatabaseTestCase,但我不知道我会在哪里使用它?我认为这可能会否定我需要在每次测试之间放置/创建数据库,但似乎并非如此?
  • 在每次测试之间删除/创建数据库变得非常痛苦,因为我有很多测试数据。有没有简单的方法可以解决这个问题(例如模拟数据库?),还是应该减少我的测试数据? (目前我只是在我的测试用例的setUp()方法中调用exec('mysql < TestSetup.sql --user=root --password=password'))。

控制器和视图:

  • 为了测试控制器和视图我伸出Zend_Test_PHPUnit_ControllerTestCase。这似乎工作正常。
  • 同样,建立/拆除似乎是最大的bug。我正在考虑删除该步骤,并且只使用不受db内容更改影响的断言。这是常见的做法吗?

您的想法非常感谢!

回答