0
对于我们的项目,我们使用用于电子邮件的定制包。这个软件包包含结构是这样的:Phpunit邮件测试。找不到有效的方法
class Mail
{
public function send($data, $view)
{
//some logic here
return with(new Mailgun($this->key))->sendMessage($data);
}
}
class Message extends Mail
{
public function passwordReset($data, $view)
{
return $this->send($data, 'viewFile1');
}
public function activate()
{
return $this->send($data, 'viewFile2');
}
}
使用看起来像这样我的测试之前:
public function testPasswordReset()
{
$data = new User(5);
$rv = with(new Message)->activate($data, 'view');
$this->assertEqual($rv, 200);
}
但我们既然决定电子邮件不应该送我失去了任何实际的数据。
我看过几个教程这些服务怎么样MailCatcher
和我背后的想法,但:
如何测试我的包背后的逻辑,当结果始终是HTTP状态?
如何测试包中的非smtp邮件服务?
请让我知道如果你需要任何额外的信息