【问题标题】:PHP + HSQLDB for unit testingPHP + HSQLDB 用于单元测试
【发布时间】:2011-08-21 04:28:15
【问题描述】:

有没有办法运行内存数据库如hsqldb?

我需要它来进行单元测试。在Java中没有问题。但是,不幸的是,它在 PHP 中有一个问题。那么,有什么办法吗?

【问题讨论】:

    标签: php unit-testing phpunit hsqldb


    【解决方案1】:

    您应该能够使用这个 Perl 模块通过 PHP 访问 HSQLDB

    https://metacpan.org/pod/DBD::JDBC

    【讨论】:

      【解决方案2】:

      理想情况下,对于单元测试,您应该模拟数据访问以单独测试您的组件 - 因此您可以使用模拟和存根来消除测试中对数据库的依赖。

      【讨论】:

      • 我发现有时编写功能性和部分集成测试更有效率,我可以检查几乎整个堆栈 - 将数据发布到 MVC 控制器操作,然后验证数据是否已安全到达数据库.这也有助于发现一些忘记事务提交的问题和使用 DAL 模拟很难找到的数据转换问题。目前我正在使用 SQLite,但它有一些怪癖有时会减慢我的速度,因为我必须调整我的数据库迁移代码才能在 SQLite 上工作。
      • @JustAMartin 这些天(在这个答案之后大约四年)我使用内存数据库进行测试,这意味着每次运行套件时都有一个干净的数据库。
      猜你喜欢
      • 2012-03-03
      • 2012-03-09
      • 2012-02-04
      • 2013-04-13
      • 2011-11-20
      • 1970-01-01
      • 2011-03-02
      • 2011-04-01
      • 1970-01-01
      相关资源
      最近更新 更多