Php Symfony使用哪种单元测试框架?
Symfony使用哪种单元测试框架Php Symfony使用哪种单元测试框架?,php,unit-testing,symfony1,phpunit,Php,Unit Testing,Symfony1,Phpunit,Symfony使用哪种单元测试框架 莱姆还是普尼特?使用它们的优点和缺点是什么?在我看来,我想到了以下几点: PHPUnit与其他工具的集成度更高,例如, (PHPUnit可以使用它打开真正的浏览器来测试您的站点) 用于持续集成 PHPUnit可以很好地使用,以生成代码覆盖率报告 PHPUnit的应用更为广泛;这可能意味着更多的支持 但请注意,我不与symfony合作,也不与lime合作。。。 不过,除了那些使用symfony的人之外,我从未听过有人谈论过它——这不是一件好事,因为有一天
莱姆还是普尼特?使用它们的优点和缺点是什么?在我看来,我想到了以下几点:
- PHPUnit与其他工具的集成度更高,例如,
- (PHPUnit可以使用它打开真正的浏览器来测试您的站点)
- 用于持续集成
- PHPUnit可以很好地使用,以生成代码覆盖率报告
- PHPUnit的应用更为广泛;这可能意味着更多的支持
不过,除了那些使用symfony的人之外,我从未听过有人谈论过它——这不是一件好事,因为有一天你将不得不使用另一个框架(是的,这种情况会发生^^)
有一件事不在PHPUnit中:
- “false”浏览器(能够对应用程序执行HTTP请求,而无需使用Selenium打开真正的浏览器)
我不知道symfony是否允许这样做,但这对于ZF/PHPUnit来说是件好事^^
(是的,不是一个特定于symfony的答案;但我所说的其中一些内容必须在该框架中仍然有效)Lime是一个更简单的测试框架,它可能是好的,也可能是坏的,这取决于您想如何使用它 symfony库本身使用自己的测试框架Lime来测试其代码库。从symfony的书中: 它基于Test::More Perl 库,并且是TAP兼容的 表示测试结果为 按照测试中的规定显示 任何协议,都是为了更好的 测试输出的可读性 我不能保证lime框架比symfony文档声称的其他PHP测试框架“更轻量级”,但我真的很喜欢它直接构建到symfony项目中,并且在没有任何额外配置的情况下与symfony命令行工具配合使用。特别酷的一件事是,symfony中的lime测试被设置为在您的“测试”环境中运行,该环境有自己的数据库、symfony缓存(在每个测试会话中被清除)和环境变量。当您想要进行功能测试时(检查模块/操作中的服务器响应和html输出,与基本单元测试相比),这非常方便。我也喜欢石灰非常容易拾取和理解,因为它非常简单。您还可以将测试放入YAML配置文件中,而不是手工编写测试 Pascal是完全正确的,PHPUnit的使用更广泛,您可以在非symfony项目中使用它。甚至还有一个插件。如果你只是想在开发symfony应用程序时直接编写简单的测试,我最好的建议是使用lime。但是,如果您有时间并希望在symfony世界之外使用这些测试技能,或者将预先存在的PHPUnit测试引入到您的symfony代码中,那么您就值得花时间查看该插件并对其进行测试