📜  FuelPHP-单元测试

📅  最后修改于: 2020-10-25 04:31:34             🧑  作者: Mango


单元测试是开发大型项目的重要过程。单元测试有助于在开发的每个阶段自动化对应用程序组件的测试。它会根据项目的业务规范在应用程序的组件不起作用时发出警报。单元测试可以手动完成,但通常是自动化的。

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.00Mb
OK (1 test, 1 assertion)