我正在开发一个 PHP(Zend Framework 1.12.1)应用程序,该应用程序以某种独特的方式连接到数据库。
基本上,我们有一个对我来说是一个“黑匣子”的 Oracle 数据库。我没有权限直接选择、更新、插入或删除任何行或表。我只能访问数据库视图(仅限选择),当我想插入/更新/删除数据时,我必须调用一个或多个存储过程。我不知道实际的表结构是什么,而且我认为任何时候都不会有人给我访问权限。
所有这一切都使得对我的模型进行单元测试非常困难(更不用说编写它们了),因为 ZF 似乎假设您的应用程序在数据库中拥有完全权限。(这就是为什么我到目前为止只对我的模型进行了手动测试,而且我的模型有些不寻常。)
我的应用程序有效,但我厌倦了手动测试。
以前有没有其他人遇到过这种情况?您能否推荐在数据库权限有限的环境中实现自动化 PHPUnit 测试的具体步骤?我已经要求 db 管理员给我一个resetTestData()
名为/ 或拆除。显然,在每次测试之前Zend_Test_PHPUnit_DatabaseTestCase
尝试truncate
数据集,然后调用getDataSet()
以获取数据并重新填充数据库。解决问题?