PHPUnit(白盒测试)

来源:互联网 发布:怎么用java寻找peak 编辑:程序博客网 时间:2024/05/01 12:12

之前有听说过PHPUnit,一直没有机会尝试,先存两篇文档;有空再试一下///

头一次使用这种东西,开始有些手忙脚乱,弄了二天了,终于有点眉目了,记录一下过程。

以下都是在windows下进行,我的php版本是php-5.1.4-win32
因为phpunit要通过pear安装,所以首先要安装pear
找到php的目录下有一个go-pear.bat,双击运行,提示你安装系统级别的还是一个本地拷贝,直接回车,定制安装目录,选择默认即可,直接回车。程序会自动从网站上下载所需要的文件,过一会就提示你安装好了。

安装好pear后,在php的目录下发现有一个pear.bat,这个是pear安装包用的程序,
在命令行进行php目录,输入 pear install phpunit2
即可,安装完成。
在php目录下会生成一个phpunit.bat,这个是命令行下的测试命令。
我们可以把他复制到我们要测试程序的目录下面。
在命令行下输入 phpunit sampleTest
就是对sampleTest这个case进行测试了。

有二点需要注意的地方:

  1. phpunit需要pear的benchmark包,所以要安装 pear install benchmark即可。
  2. 在windows下安装完成后还不能直接进行测试,运行测试程序时会出现 'php'不是内部或外部命令,也不是可运行的程序。的错误,经我一路跟踪,最后在PHPUnit2/Util/Fileloader.php这个文件里找到了问题所在,这个文件是载入测试文件用的,同时使用php解释器进行了语法检查,shell_exec('php -l ' . escapeshellarg($filename));,而我的php.exe并没有在系统的path中,所以出现了上述问题,一种办法是将$output到include之前的代码全部注释掉,这样就不用语法检查了,还有一种办法就是在系统path中加入php的安装目录

HTMLRunner for PHPUnit2

phpunit2目前只有命令行模式,在网上搜索到了HTMLRunner这个东西,
算是phpunit2的一个插件吧,可以让test以html的形式显示结果,比命令行下好看多了,
这里是下载地址
http://www.defusion.org.uk/code/phpunit2-html-runner/。

安装及使用方法:
下载后将文件解压到你的web目录,比如"HTMLRunner",访问时就通过
http://localhost/HTMLRunner/。你会看到有一个输入框,如图

case和suite可以在这里输入,一行一个测试,不需要php后缀,例如
../pliteTest
util/HistoryTest
如果输入的测试程序有语法错误,结果是一片空白,什么也不显示,否则显示下面的图

是不是比命令行下的好看多了?
当测试程序显示有错误的时候。页面下方还会有更详细的扩展信息

关于这个插件的详细信息参见上面的网址。

 
原创粉丝点击