wordpress:unit_testing
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 다음 판 | 이전 판 | ||
| wordpress:unit_testing [2016/01/26 16:39] – 만듦 changwoo | wordpress:unit_testing [2016/01/28 14:37] (현재) – changwoo | ||
|---|---|---|---|
| 줄 6: | 줄 6: | ||
| 참고로 아래 코드는 [[ https:// | 참고로 아래 코드는 [[ https:// | ||
| - | 참고로 아래 WP-CLI에서 요구하는 PHPUnit은 4.8.X 버전을 요구하므로 패키지 매니저를 통해 PHPUnit을 설치하는 것은 이 문서를 작성하는 2016년 1월 현재에는 적당하지 않다. 아래 스크립트처럼 직접 PHPUnit 을 받는 것이 적절하다. | + | 참고로 아래 WP-CLI에서 요구하는 PHPUnit은 4.8.X 버전을 요구하므로(출처? |
| <code bash> | <code bash> | ||
| 줄 56: | 줄 56: | ||
| /** Sets up WordPress vars and included files. */ | /** Sets up WordPress vars and included files. */ | ||
| require_once(ABSPATH . ' | require_once(ABSPATH . ' | ||
| + | </ | ||
| + | |||
| + | ==== 기타 ==== | ||
| + | 나중에 실행될 '' | ||
| + | <code bash> | ||
| + | sudo apt-get install subversion curl | ||
| </ | </ | ||
| 줄 68: | 줄 74: | ||
| 플러그인 디렉토리에 가 보면 다음과 같은 디렉토리가 부가적으로 생성된 것을 확인할 수 있다. | 플러그인 디렉토리에 가 보면 다음과 같은 디렉토리가 부가적으로 생성된 것을 확인할 수 있다. | ||
| - | * bin/ | + | |
| - | * install-wp-test.sh | + | * install-wp-test.sh |
| - | * tests/ | + | * tests/ |
| - | * bootstrap.php | + | * bootstrap.php |
| - | * test-sample.php | + | * test-sample.php |
| - | * phpunit.xml | + | * phpunit.xml |
| - | * .travis.yml | + | * .travis.yml |
| - | 테스트는 다음 명령으로 | + | 테스트 |
| - | < | + | |
| + | 테스트를 위한 DB를 세팅, 설정하는 과정이 필요하다. 다음 명령으로 실행한다. | ||
| + | <code bash> | ||
| + | ./ | ||
| + | </ | ||
| + | 이 스크립트는 새로운 DB를 생성하기 때문에, db-name은 기존에 사용 중인 데이터베이스를 쓰면 안 된다. 그리고 DB를 생성해야 하므로 db-user, db-pass 항목은 DB를 생성할 권한이 있는 사용자여야 하는 점을 주의한다. | ||
| + | |||
| + | 테스트는 플러그인 디렉토리에서 '' | ||
| + | |||
| + | <code php> | ||
| + | function _manually_load_plugin() { | ||
| + | require dirname( dirname( __FILE__ ) ) . '/ | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== 워드프레스의 팩토리 ===== | ||
| + | 워드프레스 플러그인의 테스트는 '' | ||
| + | |||
| + | 가령 포스트를 만드려면, | ||
| + | <code php> | ||
| + | $post_id = $this-> | ||
| + | </ | ||
| + | |||
| + | 여러 레코드를 생성하는 것도 가능하다 | ||
| + | <code php> | ||
| + | $post_ids = $this-> | ||
| + | </ | ||
| + | |||
| + | 기본적으로 제공하는 팩토리는 다음과 같다. | ||
| + | <code php> | ||
| + | $this-> | ||
| + | $this-> | ||
| + | $this-> | ||
| + | $this-> | ||
| + | $this-> | ||
| + | $this-> | ||
| + | $this-> | ||
| + | if ( is_multisite() ) { | ||
| + | $this-> | ||
| + | $this-> | ||
| + | } | ||
| </ | </ | ||
| ===== 참고 자료 ===== | ===== 참고 자료 ===== | ||
| - | * [[https:// | + | |
| - | * http:// | + | * http:// |
| - | * http:// | + | * http:// |
wordpress/unit_testing.1453826362.txt.gz · 마지막으로 수정됨: 2016/01/26 16:39 저자 changwoo
