对于我这个新手来讲,PHP的高级应用确实很陌生。几乎天天听到有人在讲单元测试,可是自己不明白为什么要做单元测试。
为什么
在设计一个函数或者方法时,总会对这个函数有一个基本输入输出的雏形。很多时候我们自己也会在写完它后测试一下是不是达到我们的预想。从这个角度讲,至少我们是需要测试的。
测试驱动开发将测试用例放在开发实际代码之前。一个测试用例可能包括测试一个功能的各种情况:负值、极值、变量类型、错误等,在开发代码之前,将测试用例做好,那么开发的代码会朝着这个目标来前进。另一方面,当需求变更时,往往会对函数内的功能进行变动,此时的测试用例在改动极小甚至不用改动的情况下就可以继续使用。并且,好的测试用例可以保证软件代码整体质量。
自动化。软件的开发者甚至可以直接用测试用例来判断其代码质量。
容易编写。
可扩展。经过对代码的极少改动,就可以实现测试的扩展。
PHPUnit的安装
PHPUnit已经成为pear软件包的一员。因此我们的安装也很简单。
#!/bin/bash pear install phpunit
如果没有出错,那么会提示安装成功。否则,你可能会遇到几个问题:缺少必需的软件或者找不到软件。这很可能是由没有添加搜索的源引起的。那么可以尝试执行:
#!/bin/bash pear channel-discover pear.phpunit.de pear channel-discover pear.symfony-project.com pear channel-discover components.ez.no
之后再安装应该就没有问题了。
pear的安装
pear可以在编译的时候自行安装,也可以通过一下方式来安装:
http://pear.php.net/manual/en/installation.shared.php
基本的使用
运行:
#!/bin/bash phpunit --help
可以看到phpunit的帮助,说明安装已经成功。
问题
如果提示出现没有这个命令,那么可能是没有设置环境变量。将环境变量设置到这个目录下即可。
本文深入探讨了为何在设计函数或方法时需要进行单元测试,并解释了测试驱动开发的概念。介绍了如何使用PHPUnit进行自动化测试,包括安装、基本使用及常见问题解决策略。
2967

被折叠的 条评论
为什么被折叠?



