PHPUnit을 사용한 WordPress 플러그인 통합 테스트를 위한 부트스트랩입니다.
composer require --dev jdgrimes/wpppb
먼저, tests
디렉터리를 포함하여 WordPress 개발 저장소의 로컬 체크아웃이 필요합니다. 특히 WordPress 코어에 기여하려는 경우 이를 얻는 권장 방법은 VVV를 사용하는 것입니다. WPPPB는 WordPress 코어에 이미 포함된 테스트 도구를 기반으로 구축되므로 해당 도구 없이는 작동하지 않습니다.
WordPress tests
디렉터리의 로컬 복사본이 있으면 WPPPB용 설정 스크립트를 실행할 수 있습니다.
vendor/bin/wpppb-init
프롬프트에 응답하면 출발 준비가 완료됩니다!
테스트는 프로젝트 루트에 생성될 tests
디렉터리(즉, Composer가 추가한 vendor
디렉터리와 함께)에 배치됩니다. 플러그인의 소스(압축되어 WordPress 사이트에 설치되는 부분)는 프로젝트 자체의 루트가 아닌 이 두 디렉토리와 함께 src
디렉토리에 있을 것으로 예상됩니다. 예제 파일 구조는 다음과 같습니다.
- src/
- my-plugin.php
- includes/
- etc.
- tests/
- vendor/
약간만 수정하면 다른 디렉토리 구조로 WPPPB를 사용할 수 있지만 이는 기본적으로 예상되는 것입니다.
평소와 같이 PHPUnit 테스트를 실행할 수 있습니다.
phpunit
플러그인 제거 루틴을 테스트하는 등 다른 멋진 작업도 수행할 수 있습니다.
(기본 부트스트랩은 PHP 5.3이 필요한 Composer의 PHP 자동 로더를 활용합니다. PHP 5.2 사용에 대한 지침은 여기를 참조하세요.)
이 프로젝트의 목적은 WordPress 코어의 테스트 모음을 사용하여 플러그인에 대한 통합 테스트를 수행하려는 플러그인 개발자에게 부트스트랩을 제공하는 것입니다. 그 목표는 테스트를 가능한 한 현실적으로 만드는 구현을 제공함으로써 이를 더 쉽게 만드는 것뿐만 아니라 더 나은 결과를 제공하는 것입니다.
이를 위해 로더는 플러그인을 원격으로 활성화하고 WordPress에서 평소처럼 플러그인을 로드하도록 하여 작동합니다. 이는 일반적으로 수행되는 것처럼 muplugins_loaded
작업에 플러그인을 수동으로 포함하고 활성화하는 것보다 더 현실적인 테스트를 제공합니다.
이 프로젝트의 코드는 MIT 라이선스에 따라 제공됩니다.