【问题标题】:PHPUnit and testing CRUD methodsPHPUnit 和测试 CRUD 方法
【发布时间】:2014-09-30 22:50:47
【问题描述】:

我有带有 CRUD 方法(插入、读取、更新和删除数据库记录)的 PHP DAO 类。在互联网上的许多 PHPUnit 测试示例中,有一个使用简单 sum($a,$b) 方法的测试,可以轻松定义 PHPUnit 测试的输入和预期输出(1+1 应该返回 2)。

如何测试 CRUD 方法?有时我会更改数据库模型,有时我会重构/更改我的代码。我的问题是如何为我的类的插入、选择、更新和删除方法定义断言?我想用 PHPUnit 测试我的 CRUD 方法是否按预期工作?

【问题讨论】:

  • 用于数据库交互的模拟将测试您修改的代码是否有效,因为您可以验证您正在构建的内容(实际查询等...)而无需与数据库交互。如果您的代码在获取时返回某些数据,则 Mock 具有该硬编码,因此您的程序可以继续执行。一旦这段代码工作,就有一个 DBUnit 类可以帮助集成数据库测试。

标签: php testing netbeans mysqli phpunit


【解决方案1】:

我将它用于我的数据库测试(当模拟不起作用时 - 在某些时候你想实际测试数据库交互) - https://github.com/malteriesch/test-db-acle

另一种(非常流行的)是 DBUnit:https://github.com/sebastianbergmann/dbunit

免责声明:我写了 test-db-acle,所以我倾向于倾向于那个 :)

【讨论】:

    猜你喜欢
    • 2012-09-18
    • 2013-02-02
    • 2015-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多