【发布时间】:2010-10-13 05:38:08
【问题描述】:
我试图阻止发送电子邮件的方法实际发送电子邮件,我认为模拟对象(或某些变体)是可行的方法。情况如下:
class UserModel {
public static function resetPassword()
{
// Code to generate new password, etc, etc
self::_sendMail($to, $body);
return 1;
}
private function _sendMail($to, $body)
{
// Send email
}
}
在 PHPUnit 中是否有我可以模拟 _sendMail() 并注入我自己的代码,以便我可以正确测试 resetPassword() 中的其他逻辑?
我的测试看起来像这样:
$this->assertTrue(UserModel::resetPassword());
感谢您的帮助。
【问题讨论】:
-
为什么投反对票?我是不是问得不好?
-
看起来反对票已被删除(:
标签: php unit-testing phpunit