PHPUnit Annotation 정리

서론


PHP Unit을 사용하면서도 잘 모르는 어노테이션을 PHPUnit v8.4 기준(2019-11-19 최신버전)으로 정리하였습니다.

@author

테스트를 작성자별 그룹화 필터링 할 때


@group 어노테이션의 별칭으로, 테스트를 작성자별로 그룹화하여 필터링 하는데 사용할 수 있습니다.

@after

각 테스트가 끝난 뒤 실행 하려 할 때


각 테스트 메소드들이 실행 된 후, 특정 메소드를 실행하고자 할때 사용할 수 있습니다.

각 테스트가 끝난 뒤 트랜잭션 커밋or롤백을 한다거나, 생성된 파일을 삭제하는 등의 처리를 하는데 사용하면 좋을 것 같습니다.

예제 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php

namespace Tests;

use PHPUnit\Framework\TestCase;

class MyTest extends TestCase
{
/**
* @after
*/
public function afterDo()
{
echo "After Method Called" . PHP_EOL;
}

public function test1()
{
echo "test1 Method Called" . PHP_EOL;
self::assertTrue(true);
}

public function test2()
{
echo "test2 Method Called" . PHP_EOL;
self::assertTrue(true);
}
}

// 출력 결과
test1 Method Called
After Method Called
test2 Method Called
After Method Called
자세히 보기