脚本宝典收集整理的这篇文章主要介绍了PHPUnit依赖注入到TestCase中,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
请考虑以下示例:
<?PHP interface AnyGreeter { public function greet($recipient); } class FriendlyGreeter implements AnyGreeter { public function greet($recipient) { return "Hello {$recipient}!"; } } class DorkGreeter implements AnyGreeter { public function greet($recipient) { return "Get lost,{$recipient}!"; } }
现在我想为实现AnyGreeter的类提供一些通用测试,例如:
<?PHP class GeeterTest extends PHPUnit_Framework_TestCase { public function testGreet() { $greeter = $this->getGreeter(); $message = $greeter->greet("world"); $this->assertContains("world",$message); } public function setGreeter(AnyGreeter $greeter) { $this->greeter = $greeter; } public function getGreeter() { if (null === $this->greeter) { $this->markTestSkipPEd("No greeter PRovided"); } return $this->greeter; } private $greeter; }
这可能会被我自己以及任何未来的实现(我无法控制)重用.
这怎么可能,特别是在一个严重依赖接口的项目中?
我不想编写抽象测试并为每个实现扩展它们 –
谢谢!
请参阅此处的“数据提供者”部分:http://www.phpunit.de/manual/3.2/en/writing-tests-for-phpunit.html
以上是脚本宝典为你收集整理的PHPUnit依赖注入到TestCase中全部内容,希望文章能够帮你解决PHPUnit依赖注入到TestCase中所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。