我对 symfony 和 phpunit 有疑问。我们的项目越来越大。所以我们决定为 phpunit 激活进程隔离,因为服务器无法再承受大量的测试(没有足够的 RAM)。从那时起,所有发送邮件的测试都不再工作了。有人可以帮助我们吗?如果 processIsolation="false" 下面的测试工作得很好,但如果 processIsolation="true" 则失败
版本:
symfony 2.1.8-dev
phpunit 3.7.9
错误信息
Project\AppBundle\Tests\MailTest::testSendMail PHPUnit_Framework_Exception:PHP 致命错误:在 /var/www/project/src/Project/AppBundle/Tests/MailTest.php 中找不到类“Swift_Message”
测试
public function testSendMail()
{
$client = static::createClient();
$message = \Swift_Message::newInstance();
$message->setFrom('example@example.com')
->setTo('example@example.com')
->setSubject('Subject')
->setBody('Hello World')
->setContentType('text/html');
$client->getContainer()->get('mailer')->send($message);
$this->assertTrue(true);
}
phpunit.xml
<phpunit
backupGlobals="false"
backupStaticAttributes="false"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
bootstrap="./autoload.php"
processIsolation="true"
stopOnFailure="false"
syntaxCheck="false" >
<testsuites>
<testsuite name="Project Test Suite">
<directory>../src/Project/AppBundle/Tests/MailTest.php</directory>
</testsuite>
</testsuites>
</phpunit>