phpunit与xdebug的使用
基本说明:
1.xdebug是程序猿在调试程序过程中使用的bug调试暴露工具
windows下安装:
1)下载php对应的dll文件,下载地址:https://xdebug.org/download.php
2)在php.ini文件中做对应xdebug的配置,只需要在最后加上下面的代码
[Xdebug]
zend_extension="C:/xampp/php/ext/php_xdebug.dll"
3)因为我是集成环境xampp的一键安装,不需要下载dll文件,在xampp内部已经存在,只需在php配置文件末尾添加对应配置即可,请不要在额外有extention;如果自行下载dll文件,注意下载与php版本与线程相匹配的文件;zend_extension这个名称也会随着php版本的不同而变化,如果遇到了相应问题,网络上有很多对应说明。
2.phpunit是测试人员单元测试工具,需要对程序员的开发代码进行每个类至每个方法的“断言”,常常程序员在开发过程中也会编写对应的测试用例代码,方便后期代码变动的测试。
1)在集成环境xampp中,我的安装方式是pear命令行安装:
pear install phpunit/PHPUnit
安装完之后,你会在php的根目录下看到pear.bat文件
安装完之后,最好设置phpunit为环境变量,这样就可以全局使用了,phpunit环境变量对应的目录就是pear.bat文件所在的目录
2)安装完之后我创建一个测试文件,代码如下:
<?php
//This is my first test
class MyFirstTest extends PHPUnit_Framework_TestCase{
public function testFirst(){
$stack = 7;
$this->assertEquals(0,$stack);
}
}
3)创建完单元测试文件之后,让我们去命令行执行一下,以下是命令行显示:
C:\Users\v_lihuan1>phpunit F:\www\testCase.php
PHPUnit 3.7. by Sebastian Bergmann. F Time: seconds, Memory: .00Mb There was failure: ) MyFirstTest::testFirst
Failed asserting that matches expected . F:\www\testCase.php: FAILURES!
Tests: , Assertions: , Failures: .
现在phpunit已经可以用了,至于断言的内容和代码的编写,我们只需要查看对应phpunit的方法文档即可
3.pdepend是一个PHP中静态代码分析的工具。它可以用来检查你的PHP项目中的代码规模和复杂程度.我也是第一次安装,如有不妥,请大家指教
执行命令行:pear install pdepend/PHP_Depend-beta ,出现以下问题
F:\www\xdebug>pear install pdepend/PHP_Depend-beta
Did not download optional dependencies: pecl/imagick, use --alldeps to download automatically
pdepend/PHP_Depend can optionally use package "pecl/imagick" (version >= 2.2.0b2)
downloading PHP_Depend-1.1..tgz ...
Starting to download PHP_Depend-1.1..tgz (, bytes)
.....................done: , bytes
ERROR: failed to mkdir C:\php\pear\docs\PHP_Depend F:\www\xdebug>
按照文中所说是缺少对应依赖pecl/imagick,需要先安装这个插件.我查到pear有可以将对应依赖一次全部执行的命令,如下所示:
F:\www\xdebug>pear install --alldeps pdepend/PHP_Depend-beta
downloading PHP_Depend-1.1..tgz ...
Starting to download PHP_Depend-1.1..tgz (, bytes)
......................................done: , bytes
downloading imagick-3.4..tgz ...
Starting to download imagick-3.4..tgz (, bytes)
...done: , bytes
install ok: channel://pear.pdepend.org/PHP_Depend-1.1.4
ERROR: unable to unpack C:\Users\V_LIHU~\AppData\Local\Temp\pear\download\imagick-3.4..tgz F:\www\xdebug>
如上所示:pecl/imagick解压失败,按照理解,也就是安装未成功
phpunit与xdebug的使用的更多相关文章
- phpunit使用
phpunit使用 标签(空格分隔): php 现在是凌晨 3 点.我们怎样才能知道自己的代码依然在工作呢? Web 应用程序是 24x7 不间断运行的,因此我的程序是否还在运行这个问题会在晚上一直困 ...
- 2016 windows安装phing:安装成功
21:39 2016/7/212016 windows安装phing:安装成功注意:出现错误时就去更新pear:参见:http://www.cnblogs.com/pinnasky/archive/2 ...
- Mac下安装PEAR
The following instructions install PEAR and PECL on Mac OS X under/usr/local/. PECL is bundled with ...
- mac 安装 php7 及扩展
mac 版本号:10.12.3 (16D30) 安装内容 php7.0.18(配置apache),composer,phpunit,xdebug扩展,docopts,mongo和redis扩展 php ...
- PHPUnit使用教程——PHP环境变量+x-debug+composer+phpunit配置安装(超详细!)
注意:Windows系统 一.提前入坑点:要求php5.6,7.0,7.1,不论使用集成版还是非集成版的小伙伴都要好好查看自己的php版本,个人的版本居然是5.5.X的,哭唧唧.不过别担心,爸爸教你升 ...
- PHP PHPUnit的简单使用
1.window安装pear的教程:http://jingyan.baidu.com/article/ca41422fd8cf3d1eae99ed3e.html 2.在工作目录下,放两个文件: 1)C ...
- WINDOWS Composer & PHPUnit 安装记录
Windows: 安装Composer: 下载了composer_setup.exe 运行之后提示和Xdebug冲突,在php.ini中注释掉php_xdebug.dll,再次运行.通过 compos ...
- PHPUnit在Windows下的配置及使用
由于我们项目涉及到php,因此需要对php代码进行单元测试.经过一番了解,决定用PHPUnit来测试php.PHPUnit花了不少时间摸索如何配置PHPUnit,看官网的文档也是一把泪.但知道怎么配置 ...
- CI集成phpunit Error: No code coverage driver is available 的解决
CI集成phpunit时,运行报No code coverage driver is available的错误,如下图: yanglingdeMacBook-Pro:tests yangling$ p ...
随机推荐
- 网络知识===cookie 、session、JSESSIONID的区别
cookie .session ? 让我们用几个例子来描述一下cookie和session机制之间的区别与联系.笔者曾经常去的一家咖啡店有喝5杯咖啡免费赠一杯咖啡的优惠,然而一次性消费5杯咖啡的机会微 ...
- 电脑IP总是变的问题
如题,如何解决该问题? 右键---->个性化---->更改桌面图标---->添加网络图标 右键网络图标----->属性---->更改适配器设置---->右键属性,找 ...
- 对象存储 - Swift 原理 及 Swift+keystone+dashboard 架构搭建
1. 原理介绍 Swift 架构.原理及功能: http://www.cnblogs.com/sammyliu/p/4955241.html 总结的很详细也很全面,受益匪浅,感谢分享. 2. keys ...
- [TJOI2007]segment
题目描述 在一个 n*n 的平面上,在每一行中有一条线段,第 i 行的线段的左端点是(i, L(i)),右端点是(i, R(i)),其中 1 ≤ L(i) ≤ R(i) ≤ n. 你从(1, 1)点出 ...
- django一对多、多对多模型、自关联的建立
# 原创,转载请留言联系 一对多模型 一对多的关系,例如员工跟部门.一个部门有多个员工.那么在django怎么建立这种表关系呢? 其实就是利用外键,在多的一方,字段指定外键即可.例如员工和部门,员工是 ...
- 【cocos2d-js官方文档】三、Bake功能使用说明
设计意图 在游戏开发的过程中,经常会遇到作为UI或者不怎么修改的背景的层(Layer), 这些层内容并不怎么变动. 而在游戏的渲染过程中,这些层往往又会消耗大量的渲染时间,特别是比较复杂的UI界面,比 ...
- HDU 2141 Can you find it?【二分查找是否存在ai+bj+ck=x】
Give you three sequences of numbers A, B, C, then we give you a number X. Now you need to calculate ...
- 福州三中集训day3
Day3数据结构,强无敌. 基本讲的是栈,队列,链表,都是些还会的操作,然后接着讲的就比较心凉凉了,先讲了堆,然后是hsah 栈,队列,链表问题都不大,笔记记得都还好,堆就凉凉了. 不会不会不会,没学 ...
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals )D. Innokenty and a Football League(2-sat)
D. Innokenty and a Football League time limit per test 2 seconds memory limit per test 256 megabytes ...
- 读《thinking in java》第一遍笔记
1.System.out.println(variable)为什么会调用重写的toString方法? 根据我搜到的信息结合源代码,得到以下结论,如有误请告知. 首先我们看一下println方法的源代码 ...