PHP单元测试配置与使用方法详解

前端之家收集整理的这篇文章主要介绍了PHP单元测试配置与使用方法详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了PHP单元测试配置与使用方法分享给大家供大家参考,具体如下:

PHP与其他语言不太一样,单元测试需要自己安装和配置,相对麻烦一点,不过单元测试对于提高库的稳定性和健壮性还是非常给力的,下面教大家怎么配置PHP单元测试

注意:PHP升级到7.1版本以上

配置说明

1.全局安装PHPunit命令脚本

  1. $ wget https://phar.PHPunit.de/PHPunit-7.0.phar
  2. $ chmod +x PHPunit-7.0.phar
  3. $ sudo mv PHPunit-7.0.phar /usr/local/bin/PHPunit
  4. $ PHPunit --version
  5. PHPUnit x.y.z by Sebastian Bergmann and contributors.

2.全局安装安装PHPunit代码

  1. composer global require PHPunit/PHPunit

3.创建 PHPunit.xml放在你的项目根目录,这个文件PHPunit 会默认读取的一个配置文件

  1. <PHPunit bootstrap="vendor/autoload.PHP">
  2. <testsuites>
  3. <testsuite name="service">
  4. <directory>tests</directory>
  5. </testsuite>
  6. </testsuites>
  7. </PHPunit>

4.配置PHPstorm单元PHPunit.phar路径,Languages & Frameworks > PHP > PHPUinit

如我的PHPunit本地的路径为/usr/local/bin/PHPunit

PHP单元测试配置与使用方法详解


5.配置单元测试类提示,Languages & Frameworks > PHP > include path

如我的PHPunit包本地的路径为/Users/chenqionghe/.composer/vendor/PHPunit

PHP单元测试配置与使用方法详解


6.单元测试编写

1.Class为Demo的测试类为DemoTest

2.测试类继承于 PHPUnit\Framework\TestCase

3.测试方法

  • 必须为public权限,
  • 一般以test开头,也可以给其加注释@test来标识
  • 在测试方法内,类似于 assertEquals() 这样的断言方法用来对实际值与预期值的匹配做出断言。
  1. <?PHP
  2. use Eoffcn\Utils\Arrays;
  3. use PHPUnit\Framework\TestCase;
  4. /**
  5. * Array测试用例
  6. * Class ArraysTest
  7. */
  8. class ArraysTest extends TestCase
  9. {
  10. public function testGet()
  11. {
  12. $array = [
  13. 1 => [
  14. 'b' => [
  15. 'c' => 'cqh'
  16. ]
  17. ],2 => [
  18. 'b' => [
  19. 'c' => 'cqh'
  20. ] ]
  21. ];
  22. $this->assertEquals('cqh',Arrays::get($array,'1.b.c'));
  23. }
  24. }

执行单元测试  

1.执行单个文件单元测试

PHPstorm方式,当前测试类右键Run即可

PHP单元测试配置与使用方法详解


命令行的方式,进行项目目录执行

  1. PHPunit tests/ArraysTest.PHP

  

PHP单元测试配置与使用方法详解


2.执行全局单元测试

PHPstorm方式

PHP单元测试配置与使用方法详解


PHP单元测试配置与使用方法详解


命令行方式,命令行下进入当前项目执行

  1. PHPunit

PHP单元测试配置与使用方法详解


更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP错误与异常处理方法总结》、《PHP字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《PHP面向对象程序设计入门教程》及《PHP优秀开发框架总结》

希望本文所述对大家PHP程序设计有所帮助。

猜你在找的PHP相关文章