Symfony单元测试 Symfony电子邮件管理 Symfony高级概念 单元测试对于大型项目的持续开发至关重要。单元测试会自动测试您的应用程序的组件,并在出现问题时提醒您。单元测试可以手动完成,但通常是自动的。 PHPUnit的 Symfony框架与PHPUnit单元测试框架集成。要为Symfony框架编写单元测试,我们需要设置PHPUnit。如果PHPUnit未安装,请下载并安装它。如果它安装正确,那么你会看到下面的回应。 phpunit PHPUnit 5.1.3 by Sebastian Bergmann and contributors 单元测试 单元测试是针对单个PHP类(也称为单元)的测试。 在AppBundle的Libs /目录下创建一个班级Student。它位于 “src / AppBundle / Libs / Student.php” 。 Student.php namespace AppBundle\Libs; class Student { public function show($name) { return $name. “ , Student name is tested!”; } } 现在,在“tests / AppBundle / Libs”目录下创建一个StudentTest文件。 StudentTest.php namespace Tests\AppBundle\Libs; use AppBundle\Libs\Student; class StudentTest extends \PHPUnit_Framework_TestCase { public function testShow() { $stud = new Student(); $assign = $stud->show(‘stud1’); $check = “stud1 , Student name is tested!”; $this->assertEquals($check, $assign); } } 运行测试 要在目录中运行测试,请使用以下命令。 $ phpunit 执行上述命令后,您将看到以下响应。 PHPUnit 5.1.3 by Sebastian Bergmann and contributors. Usage: phpunit [options] UnitTest [UnitTest.php] phpunit [options] <directory> Code Coverage Options: --coverage-clover <file> Generate code coverage report in Clover XML format. --coverage-crap4j <file> Generate code coverage report in Crap4J XML format. --coverage-html <dir> Generate code coverage report in HTML format. 现在,按如下方式在Libs目录中运行测试。 $ phpunit tests/AppBundle/Libs 结果 Time: 26 ms, Memory: 4.00Mb OK (1 test, 1 assertion) Symfony电子邮件管理 Symfony高级概念