php 下开发组件,现在都已经使用composer 的方式。
开发一个组件,基本操作是几点:
1. 安装composer
2. 安装phpunit
3. 初始化目录
4. 初始化 composer.json
5. 生成autoload
6. 设置好phpunit测试环境
关于安装 composer及 phpunit ,可以参考前文:
phpstorm 下使用composer下载的phpunit
初始化目录
目录的话,一般有个源码目录,再一个测试目录,基本如下:
project
src
vendor_name
package_name
test
目录规范及类名的规范可以采用PSR-0 或者PSR-4 ,请参见 http://www.php-psr.com/ 。
初始化 composer.json
在project目录下,运行
composer init
生成autoload
为了让类能够在自动加载,编辑composer.json,指明autoload方式,
"autoload": {
"psr-0": { "": "src/" }
}
"autoload-dev":{
"psr-0": { "":"src/" }
}
再运行下面的命令
composer dump-autoload --optimize
运行后,就可以看到多了一个 vendor 目录,内有autoload.php.
设置好phpunit测试环境
为了让phpunit 在运行时能够自动加载类,需要在project 下生成一个 phpunit.xml.dist ,基本内容如下,这里面关键的就是指明phpunit去运行下 autoload.php。
<?xml version="1.0" encoding="utf-8" ?> <phpunit colors="true" bootstrap="./vendor/autoload.php"> <testsuites> <testsuite name="my tests"> <directory>test</directory> </testsuite> </testsuites> </phpunit>
最后,在phpunit 运行配置中,指明采用这个配置文件。