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-> | ||
+ | } | ||
</ | </ | ||
wordpress/unit_testing.1453826394.txt.gz · 마지막으로 수정됨: 2016/01/26 16:39 저자 changwoo