【问题标题】:Swiftmailer unit/functional test in symfony4.2symfony4.2 中的 Swiftmailer 单元/功能测试
【发布时间】:2019-02-13 08:46:23
【问题描述】:

以下是测试/控制器文件夹中的代码。

<?php

namespace App\Tests\Controller;
use App\Controller\RegisterController;
use PHPUnit\Framework\TestCase;
use PHPUnit\Framework\MockObject\MockObject;
use Psr\Log\LoggerInterface;
use Swift_Message;

class EvaplyTest extends TestCase
{
    /** @var LoggerInterface|MockObject */
    protected $logger;
    /** @var RegisterController **/
    protected $controller;
/**
 * {@inheritdoc}
 */
protected function setUp()
{
    $this->logger = $this->createMock(LoggerInterface::class);
    $this->controller = new RegisterController(
        $this->logger
    );
    parent::setUp();
}

/**
 * Test for determing wether evaply id generated sucessfully or not
 */
public function testMailsent()
  {
    $message = (new Swift_Message("Successfully Registered"));
  }
}

我收到此错误“此测试未执行任何断言”

我只是想确认邮件发送成功与否。

【问题讨论】:

标签: php unit-testing symfony swiftmailer phpunit


【解决方案1】:

使用 phpunit 时,任何测试都必须包含断言。断言是需要验证的肯定。

例如在用于电子邮件测试的 Symfony 文档中,您会发现

$this->assertSame(1, $mailCollector->getMessageCount());

这意味着肯定第一个参数的值必须与第二个参数的值相同。如果这是真的,测试继续/成功。如果没有,php单元会报错。

正如 titili 所说,这里已经记录了发送电子邮件 https://symfony.com/doc/current/email/testing.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-07
    • 1970-01-01
    • 2021-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多