如何存储zend,phing和phpunit的共享配置?
我有一个用Zend Framework编写的
PHP应用程序.它使用Phing构建系统,使用PHPUnit进行单元测试.所有这些部件都有配置设置. Zend使用application.xml,Phing使用build.xml和可选的一些build.properties,PHPUnit使用phpunit.xml.
但是,我在哪里存储所有三个组件所需的信息?考虑数据库配置(例如密码). 在我的例子中,application.xml有各种各样的部分(dev,staging,production),它们都有不同的数据库配置.我最近在我的应用程序中集成了一个ORM,现在我想对我的模型进行单元测试.所以我有第四个数据库(单元测试),由PHPUnit使用. PHPUnit可以处理夹具数据,但不能处理数据库架构.所以,我在想我会编写一个Phing构建目标,将数据库模式从生产或登台复制到unittest数据库.这样我就可以获得额外的好处,甚至可以对我的数据库迁移脚本进行单元测试.但为了做到这一点,Phing需要同时访问多个数据库. 我的第一个直觉就是将所有四个数据库的所有配置都放在build.properties中,让Phing只生成application.xml和phpunit.xml.但是,让构建系统生成配置文件感觉很糟糕. 什么是最好的解决方案?或者我应该简单地复制配置细节而不用担心太多? 思考 我可以简单地复制它们.它只是一些设置,它们不应经常更改.但我敢打赌,当他们改变时,我会忘记重复(因为它不经常发生).共享参数包括: >数据库配置(开发,升级,生产和单元测试)
好吧,完全生成它们似乎有点脏.但是如果构建系统只是在各种配置文件的.dist版本上从Phing的build.properties文件中替换令牌,那对我来说似乎没问题. 有关示例,请参阅source code of Dasprids blog. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |