测试 Symfony 3 最佳实践
Testing Symfony3 best practices
我想知道测试 Symfony
应用程序的最佳技术。我的想法是测试所有 应用程序层,从 数据库(存储库和查询)开始,服务、控制器和视图。
我查了一下这个,但我不确定应该遵循哪个方向。我发现了一些像 Phpspec
和 Behat
这样的工具,但我不确定它们是否符合我的需要以及哪个是最好的...你们有什么建议?
这就是我们过去 4 年一直在做的事情。
- 使用 Behat 测试应用程序的行为。我们主要介绍 GUI 相关功能(twig、模板、浏览器、文件上传、客户端验证、API 请求和响应等)的行为方式,但是如果您愿意,还可以介绍应用程序功能的行为类似于(DB CRUD 操作、测试电子邮件功能、命令、排队系统,例如 RabbitMQ、Beanstalk 等),因此您完全不受限制。
- 使用 PhpSpec 来测试应用程序的功能或功能的一部分或全部。我们涵盖服务、实用程序 类、侦听器等。
- 不要测试 控制器,因为我们在遵循 "thin controller, fat services" 方法时尽可能将它们保持 "thin"。
所以总的来说,Behat 非常强大,可以涵盖大多数情况,所以我们有比 PhpSpec 更多的 behat 测试。您可以使用任何合适的测试工具,例如 PhpUnit,这样您就可以自由地测试其他工具。
我想知道测试 Symfony
应用程序的最佳技术。我的想法是测试所有 应用程序层,从 数据库(存储库和查询)开始,服务、控制器和视图。
我查了一下这个,但我不确定应该遵循哪个方向。我发现了一些像 Phpspec
和 Behat
这样的工具,但我不确定它们是否符合我的需要以及哪个是最好的...你们有什么建议?
这就是我们过去 4 年一直在做的事情。
- 使用 Behat 测试应用程序的行为。我们主要介绍 GUI 相关功能(twig、模板、浏览器、文件上传、客户端验证、API 请求和响应等)的行为方式,但是如果您愿意,还可以介绍应用程序功能的行为类似于(DB CRUD 操作、测试电子邮件功能、命令、排队系统,例如 RabbitMQ、Beanstalk 等),因此您完全不受限制。
- 使用 PhpSpec 来测试应用程序的功能或功能的一部分或全部。我们涵盖服务、实用程序 类、侦听器等。
- 不要测试 控制器,因为我们在遵循 "thin controller, fat services" 方法时尽可能将它们保持 "thin"。
所以总的来说,Behat 非常强大,可以涵盖大多数情况,所以我们有比 PhpSpec 更多的 behat 测试。您可以使用任何合适的测试工具,例如 PhpUnit,这样您就可以自由地测试其他工具。