怎么用单元测试php(PHP使用phpunit进行单元测试示例)
类别:编程学习 浏览量:1091
时间:2021-10-25 10:30:06 怎么用单元测试php
PHP使用phpunit进行单元测试示例本文实例讲述了PHP使用phpunit进行单元测试。分享给大家供大家参考,具体如下:
1. linux服务器上安装phpunit
|
wget https: //phar .phpunit.de /phpunit .phar chmod +x phpunit.phar sudo mv phpunit.phar /usr/local/bin/phpunit |
建立phpunit短命令
phpunit --version
|
[root@dongzi phpunit_test] # phpunit --version PHPUnit 5.6.1 by Sebastian Bergmann and contributors. |
2. 创建单元测试文件
文件名称为UnitTest.php
我们可以在单元测试文件内的方法里面调用功能模块,用数据模拟看是否运行正常,如果通则会报错,断掉
|
<?php class UnitTest extends PHPUnit_Framework_TestCase{ public function testPushAndPop(){ $stack = array(); $this->assertEquals(0,count($stack)); array_push($stack, 'foo' ); // 断言插入数据到$stack数组后值是否等于1 $this->assertEquals(1,count($stack)); } /** *定义 test 标签声明该方法是测试方法 *@ test ***/ public function indexEquals(){ $stack = array(1,2,3,4); // 断言$stack[0]等于2 $this->assertEquals(2,$stack[0]); } } ?> |
3. phpunit运行文件
|
[root@dongzi phpunit_test] # phpunit UnitTest.php PHPUnit 5.6.1 by Sebastian Bergmann and contributors. .F 2 / 2 (100%) Time: 82 ms, Memory: 6.75MB There was 1 failure: 1) UnitTest::indexEquals Failed asserting that 1 matches expected 2. /wwwroot/phpunit_test/UnitTest .php:18 FAILURES! Tests: 2, Assertions: 3, Failures: 1. |
结果显示测试php文件中共运行两个模块,有一个模块错误
错误测试方法名为indexEquals报错行为18行。
因为因为stack等于0不等于断言的1,所以报错,定位错误成功。
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/lisqiong/p/5964375.html
您可能感兴趣
- php执行语句(PHP goto语句用法实例)
- php中字符串反转的函数(php常用字符串查找函数strstr与strpos实例分析)
- phpstudy服务器怎么设置(phpstudy2018 访问目录服务权限问题)
- linux如何安装php环境(Linux下安装Memcached服务器和客户端与PHP使用示例)
- php无法读取txt文件(php写入txt乱码的解决方法)
- thinkphp5怎么设置当前的模块(thinkPHP5.1框架中Request类四种调用方式示例)
- thinkphp5框架怎么打开(thinkphp5.1框架模板布局与模板继承用法分析)
- php查询数据库给变量赋值(详解PHP变量传值赋值和引用赋值变量销毁)
- nginx如何配置php项目(Nginx服务器究竟是怎么执行PHP项目)
- php扩展安装示例(php扩展开发入门demo示例)
- php 设置sessionid生成机制(PHP Cli 模式设置进程名称的方法)
- php定时执行PHP(Cpanel下Cron Jobs定时执行PHP的方法)
- php字符串长度怎么获取(PHP实现给定一列字符,生成指定长度的所有可能组合示例)
- php大量数据计算有什么技巧(PHP各种常见经典算法总结排序、查找、翻转等)
- php中变量定义规则(php use和include区别总结)
- php时间戳是什么意思(php时间戳转换代码详解)
- 越南没事(越南没事情做)
- 重庆旅游攻略(重庆旅游3-4天攻略最佳线路)
- 周杰伦演唱会门票(周杰伦演唱会门票多少钱一张2023)
- 焕然一新 成都轨道集团官方网站改版上线(成都轨道集团官方网站改版上线)
- 成都轨道交通19号线二期全线电通(成都轨道交通19号线二期全线电通)
- 19号线二期全线电通 轨道交通项目最新进展来了(19号线二期全线电通)
热门推荐
- 阿里云ecs属于哪种云服务(阿里的轻云服务器、虚拟主机、云服务器ECS的区别?)
- sql server 数值类型运算(SQL SERVER2012中新增函数之字符串函数CONCAT详解)
- javascript如何跨域
- dedecms水印(dedecms上传透明背景图片变成黑色的解决办法)
- sqlserver查询信息表(SQL Server中Table字典数据的查询SQL示例代码)
- 存储过程中使用事务Transaction
- nginxpython编写模块(Python开发之Nginx+uWSGI+virtualenv多项目部署教程)
- mybatis为什么还用mysql(关于MyBatis连接MySql8.0版本的配置问题)
- mysql的日志怎么清除(MySQL删除了记录不生效的原因排查)
- 宝塔面板密码忘记了怎么解锁(宝塔面板忘记用户名密码怎么找回)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9