【问题标题】:Rearranging order of @dataProvider and database setup重新排列@dataProvider 和数据库设置的顺序
【发布时间】:2011-04-15 01:11:58
【问题描述】:

因此,Zend 的 phpunit 数据库框架允许预加载带有表的数据库。但是,这阻止了我将 @dataProvider 与数据库一起使用,因为 @dataProvider 似乎在 zend 重新加载数据库之前被执行。这会导致数据库表不同步。

有没有办法重新安排这个过程,让 zend 重新加载数据库,然后调用 @dataProvider?

【问题讨论】:

    标签: phpunit zend-db


    【解决方案1】:

    Zend 何时加载您的数据库?如果您专门从setUp() 调用它,则可以将调用移至数据提供者方法。这并不理想,但 PHPUnit 调用数据提供者的方式是其架构的核心。 Sebastian 计划在某个时间点上重做这一点,但我不知道它在优先级列表中的位置有多高。

    编辑:Sebastian 创建了一张票,讨论了基于 @depends 的重新排序测试——在调用数据提供者时不会改变。对于造成的混乱,我深表歉意。

    【讨论】:

    • Zend 扩展了数据库测试用例并覆盖了这个方法: } `
    • @Ray H - 该方法可能是从setUp() 调用的,这意味着你被卡住了。您可以复制和修改 Zend 的测试用例类而不是扩展它,并让数据提供者方法进行数据设置。这就是我为 Zend 控制器和视图脚本测试所做的,因为我需要更多控制权并希望将它们分开。
    猜你喜欢
    • 2015-12-16
    • 2021-08-23
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-23
    • 2023-03-16
    • 2012-07-26
    相关资源
    最近更新 更多