패키지의 파일 구성
6421 단어 BEAR.Sunday
Packagist에 등록된 패키지는 표준 파일/디렉토리 구조가 어느 정도 있지만 작성자와 종속 프레임워크에 따라 미묘한 차이가 있을 수 있습니다.
표준적이고 CI용 설정이 완비된 포장 구성은?이 점에서 토론의 현재 구성을 소개하다.(Aura 프레임과 비슷한 구조BEAR.Sunday 사용)
패키지 폴더 이름
. (점) 구분자 {공급업체 이름}.{포장 이름}.아우라랑 똑같아요.
bin
PHP 실행 파일을 저장합니다.
src
libs,lib 등src도 있다.src의 클래스 파일은 예외와 모조 등을 제외하고는 하위 디렉터리를 만들지 않고 평평하게 설정합니다.trait는 원칙적으로 2차 분사 코드를 제외한 코드를 사용하지 않는다.tests
bootstrap.php 파일을 tests 폴더에 넣습니다.phpunit.xml.dist를 프로젝트의 루트 페이지phpunit에 놓으면 파라미터가 없이 테스트를 할 수 있습니다.namespace는 대응하는 src와 같습니다.그러면 가져올 필요가 없습니다
use.Mock과 Stub은 모두 Fake의 접두사tests/Fake를 붙여서 폴더에 저장합니다.docs
docs/demo에 프레젠테이션 코드가 설정되어 있습니다.다른 문서가 있으면 이 폴더에 놓으십시오.LICENSE
MIT가 많은 것 같아요.파일 이름은
LICENSE이고 확장자는 없습니다.CI/QA 설정 파일
phpunit.xml.dis
<phpunit bootstrap="tests/bootstrap.php">
<testsuites>
<testsuite>
<directory suffix="Test.php">tests</directory>
</testsuite>
</testsuites>
<logging>
<log type="coverage-html" target="build/coverage"/>
<log type="coverage-clover" target="build/logs/clover.xml"/>
<log type="junit" target="build/logs/junit.xml" logIncompleteSkipped="false"/>
</logging>
<filter>
<whitelist>
<directory suffix=".php">src</directory>
</whitelist>
</filter>
</phpunit>
.scrutinizer.ymlfilter:
paths: ["src/*"]
tools:
external_code_coverage: true
php_code_coverage:
timeout: 1200
php_sim: true
php_mess_detector: true
php_pdepend: true
php_analyzer: true
php_cpd: true
php_mess_detector:
enabled: true
config:
ruleset: ./phpmd.xml
php_code_sniffer:
enabled: true
config:
ruleset: ./phpcs.xml
.travis.ymllanguage: php
php:
- 5.5
- 5.6
- hhvm
- 7
install: travis_retry composer install --no-interaction --prefer-source
script:
- if [ "$TRAVIS_PHP_VERSION" == "hhvm" ]; then phpunit; fi
- if [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then phpunit --coverage-text --coverage-clover=coverage.clover; fi
after_script:
- wget https://scrutinizer-ci.com/ocular.phar
- if [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi
hhvm 덮어쓰기 값이 불안정합니다TRAVIS_PHP_VERSION.10.0와 테스트 커버100%를 기준으로 한다.compooser test에서 QA 도구 실행의phpmd.xml/phpcs.xml
Reference
이 문제에 관하여(패키지의 파일 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/koriym/items/0c11723bf4f36b9b910f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)