我有没有使用 TDD 的旧代码现在我想为一个看起来像这样的函数编写一个测试
function somefunction($someargs){
// do a few checks on $someargs
$database = new DB_PG();
$result = $database->select($query);
// do some changes on result
return $result;
}
因为我对 phpunit 和测试没有太多经验,所以我的问题是:我如何模拟 DB_PG?我在测试中尝试了 getMock(),但由于该函数使用“new”来获取实例,所以我的模拟对象被忽略了,这是有道理的
所以我只看到 2 个选项
- 我不知道 phpunit 的一些特性 - 这就是我在这里问的原因 ^^
- 我必须修改旧代码 - 我知道这会更好
那么,有人知道选项1的答案吗?
谢谢大家