在数据库驱动的CodeIgniter Web应用程序中进行单元测试

时间:2012-02-09 17:20:04

标签: database unit-testing codeigniter testing

CodeIgniter内置了一个Unit Testing类,我非常想使用它。但是,我想要测试的几乎所有函数都通过添加记录,删除记录等与数据库进行交互。例如,我如何编写“创建用户”函数的测试,而不是每次运行测试时都实际创建用户?

经过一些进一步的研究,似乎我需要将Mock对象用于外部服务,如数据库等。除了这个论坛帖子之外,我还没有找到关于如何做到这一点的文档方式。 : http://codeigniter.com/forums/viewthread/106737

有没有实际的文件?

1 个答案:

答案 0 :(得分:4)

如果您的数据库驱动程序允许事务,请使用它们。做任何需要测试的事情,然后回滚(成功或失败)。

我发现使用控制器操作运行单元测试很困难。如果您找到了一个很好的方法,请告诉我们!