重新排列@dataProvider和数据库设置的顺序

发布于 2024-10-31 20:01:06 字数 185 浏览 4 评论 0原文

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

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

So, Zend's phpunit database framework allows preloading a database with tables. However, this stops me from using @dataProvider with the database because it appears that @dataProvider gets executed before zend reloads the database. This causes the database tables to be out of sync.

Is there a way I can rearrange this procedure so that zend reloads the database, then @dataProvider gets called?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

|煩躁 2024-11-07 20:01:06

Zend 何时加载您的数据库?如果您专门从 setUp() 调用它,则可以将调用移至数据提供程序方法。这并不理想,但 PHPUnit 调用数据提供者的方式是其架构的核心。塞巴斯蒂安计划在某个时候重新处理这个问题,但我不知道它在优先级列表中的排名有多高。

编辑:Sebastian 创建了一个票证,讨论基于 @depends 的重新排序测试 - 在调用数据提供程序时不进行更改。对于造成的混乱,我深表歉意。

When does Zend load your database? If you call it specifically from setUp() you could move the call to the data provider method. It's not ideal, but the way that PHPUnit calls the data providers is pretty core to its architecture. Sebastian is planning to rework this as some point, but I don't know how high it is on the priority list.

Edit: Sebastian created a ticket that discusses reordering tests based on @depends--not changing when data providers are called. My apologies for the confusion.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文