用PHP开始的单元测试

And*_*dré 8 php phpunit unit-testing simpletest

可能重复:
简单测试与PHPunit

我是软件开发方面的新手.我需要知道我应该使用女巫测试单元框架.我看到有些人使用PHPUnit而其他人使用SimpleTest.我应该为初学者选择什么样的套餐?

最好的祝福,

edo*_*ian 25

我真的困惑,Simpletest仍然被认为是phpunit的替代品.也许我只是被误导了,但就我所见:

  • PHPUnit是标准; 大多数框架都使用它(比如Zend Framework,Cake,Agavi,甚至Symfony都在为Sympfony 2删除他们自己的Framework for phpunit).
  • PHPUnit集成在每个PHP IDE(Eclipse,Netbeans,Zend Stuide,PHPStorm)中并且运行良好.
    • Simpletest有一个用于PHP 5.1的eclipse扩展(也就是那么老,以及它在sourceforge上)而没有别的.
  • PHPUnit适用于每个连续的集成服务器,因为它输出所有标准日志文件以用于代码覆盖和测试报告.
    • 最简单的不是.虽然这不是一个大问题,但一旦你停止"只是测试"并开始开发软件,它会让你大吃一惊(是的,这句话是挑衅:)不要太认真对待它.
  • PHPUnit是主动,稳定的,并且适用于每个代码库,每个场景以及您想要编写测试的每种方式.
    • Simpletest没有维护,过时,并且与PHP 5.3(一年前发布)不兼容
  • (主观)PHPUnit提供比Simpletest 更好的代码覆盖率报告
    • 使用PHPUnit,您还可以在IDE中获取这些报告(Netbeans,Eclipse,...)

我还没有看到任何支持Simpletest的论据.由于PHPUnit可通过pear获得,因此安装起来并不简单:

pear channel-discover pear.phpunit.de
pear install phpunit/PHPUnit
Run Code Online (Sandbox Code Playgroud)

并且"第一次测试"看起来几乎相同.

对于你想要测试的一切,PHPUnit将有一个解决方案,你几乎可以在任何地方找到帮助(SO,#fpunit irc channel on freenode,几乎每个php开发人员;))

如果我说错了或忘记了什么,请纠正我:)

  • 我同意,非常好.我认为有吸引力的是,对于刚开始使用PHP单元测试的人来说,它看起来更简单.如果你没有使用PEAR(不管你信不信,有些人没有),安装起来就更简单了:你只需下载一个拉链并打开它. (2认同)

Nat*_*nes 5

我从SimpleTest开始,因为学习曲线似乎并不陡峭.但它没有得到维护,并且在PHP5.3中引发了大量警告,并且无法完成我想要的任何事情.我最终不得不切换到PHPUnit,这是一个转换我的测试的漫长过程.如果我首先开始使用PHPUnit!


Nan*_*nne 0

我发现 SimpleTest 很容易启动,并且可以用于我的目的。目前还没有发现什么大问题。手册/网站有点令人困惑,但通过一些示例搜索就足够了。

感觉不是很专业,但当你要求初学者框架时,无论如何,尝试一下:)