单元测试是开发大型项目的重要过程. 单元测试有助于在开发的每个阶段自动测试应用程序的组件.当应用程序的组件根据项目的业务规范不工作时,它会发出警报.单元测试可以手动完成,但通常是自动完成的.
PHPUnit
FuelPHP框架与PHPUnit测试框架集成.要为FuelPHP框架编写单元测试,我们需要设置PHPUnit.如果未安装PHPUnit,则下载并安装它.我们可以使用以下命令在我们的系统中确认PHPUnit的可用性.
phpunit --version
如果PHPUnit可用,您将看到类似于以下结果.
PHPUnit 5.1.3 by Sebastian Bergmann and contributors.
创建单元测试
FuelPHP提供的写入单元测试的标准位置是fuel/app/tests.我们可以在单独的文件夹中编写控制器,模型,视图和演示者的单元测试.让我们编写一个单元测试来验证Model_Employee对象.
步骤1 : 在fuel/app/tests文件夹下创建一个文件夹,模型.
第2步 : 在fuel/app/tests/model/文件夹下创建一个文件employee.php.
第3步 : 通过扩展PHPUnit提供的TestCase类来创建一个新的测试类Test_Model_Employee.
步骤4 : 编写一个方法testInstanceOfEmployee(),使用PHPUnit的TestCase类提供的assertInstanceOf()方法为员工对象创建资产.
以下是完整代码 :
assertInstanceOf(Model_Employee::class, new Model_Employee()); } }
创建测试组
FuelPHP提供创建测试组的选项一组测试用例.创建组就像添加docblock属性@group一样简单.让我们在MyTest组中包含我们的测试用例.
assertInstanceOf(Model_Employee::class, new Model_Employee()); } }
运行测试
要在目录中运行所有测试,使用以下命令.
$ php oil test
运行一组特定的测试,使用以下命令.
$ php oil test --group = MyTest
执行命令后,您将收到以下回复.
Tests Running...This may take a few moments.PHPUnit 5.1.3 by Sebastian Bergmann and contributors. 1 / 1 (100%).Time: 123 ms, Memory: 8.00MbOK (1 test, 1 assertion)