본문으로 바로가기

[PHP] PHPUnit #1. 시작하기

category Helloworld!/PHP 2016. 5. 17. 14:49
phpunit 에서 테스트 케이스느 PHP 클랙스이고 PHPUnit_Framework_TestCase 는 하위 클래스이다.
class MyTest extends PHPUnit_Framework_TestCase {
}
함수는 test 로 시작.
각 테스트에서 검증해야할 진술이 있다면 assert 로 시작한다. ex) assertTrue, assertFalse, assertEqulas
 class MyTest extends PHPUnit_Framework_TestCase {
    public function test_equality () {
        $this->assertTrue(1 == 1);
    }
}
위 테스트 케이스를 저장하고 테스트해보면 다음과 같이 나온다
> phpunit MyTest.php
PHPUnit 3.7.24 by Sebastian Bergmann.

.

Time: 2 ms, Memory: 5.25Mb

OK (1 test, 1 assertion)
. 으로 나오면 통과, 즉 테스트 결과는 성공이다. 여러 테스트 케이스를 만들어서 테스트했을 경우에는 .... (4개가 테스트 통과) 로 나온다.
실패했을 경우에는 F로 보여준다
ex) ...F..
6개의 테스트 중에 4번째는 실패. 나머지는 성공이다

assert- 함수들
assertTrue, assertFalse
assertEquals($expected, $actual), assertSame($expected, $actual)(둘의 차이는 ==와 ===의 차이라고 생각하면 된다)
assertContains($needle, $haystack), assertNotContains($needle, $haystack)
assertArrayHasKey($key, $array)
assertContainsOnly($type, $variable)
assertType($type, $var): 타입 검사
assertNotNull
assertLessThan, assertGreaterThan
assertStringsStartWith($prefix, $str), assertStringsEndsWith($suffix, $str)

참고사이트 : https://github.com/left21wm/dev-sharing/blob/master/process/TDD/pt2.md