MetaBBS 단위 테스트 안내
========================

왜 하나요?
----------
* 코드의 무결성을 보장하기 위해서 합니다.
* 코드를 리팩토링하기 위해서 합니다. (테스트 가능한 코드로 바꿔가는 과정에서 자연히 리팩토링이 됩니다.)

어떻게 하나요?
--------------
* 테스팅 프레임워크로는 SimpleTest (http://simpletest.org)를 씁니다. simpletest/ 디렉토리에 함께 들어있습니다.
* http://url/to/metabbs/tests/로 접속하면 테스트를 수행할 수 있습니다. 테스트 케이스 목록에서 개별 테스트를 선택할 수도 있습니다. (fixtures/에 쓰기 권한을 줘야 할 지도 모릅니다.)

코드 커버리지 측정
------------------
코드 커버리지를 측정하기 위해서는 XDebug 확장과 limb_unit 패키지가 필요합니다. (PHP5에서만 가능)
콘솔에서 coverage.cmd를 실행하면 cov/ 디렉토리에 코드 커버리지 레포트가 생성됩니다.
주의: 코드 커버리지는 skins, styles, app/views, tests/simpletest 디렉토리를 제외한 PHP 스크립트를 기준으로 측정됩니다.

새 테스트 케이스를 만드려면?
----------------------------
테스트 케이스의 이름이 XXX라면, XXX_test.php를 만들면 됩니다.
테스트에 사용되는 고정된 데이터는 fixtures/ 디렉토리 안에 저장합니다. 동적으로 생성된 파일은 되도록이면 tearDown 메소드에서 정리합니다.

데이터베이스 설정하기
---------------------
아직 설정 파일을 따로 분리할 수 없어서, 특정 값으로 고정되어 있으므로 그 값대로 데이터베이스를 설정하셔야 합니다. (따라서 되도록이면 로컬 서버에서 테스트하시기를 권장합니다.)
* 기본 테이블 종류는 InnoDB여야 합니다. (테스트 데이터 입력에 트랜잭션이 쓰입니다. my.cnf에 default_table_type=innodb 구문을 추가하세요.)
* 아이디는 root, 암호는 없고 데이터베이스 이름은 metabbs_test
