Phpunit: ChildTest์˜ ์ฒ ์ž๊ฐ€ ์ •ํ™•ํ•˜์ง€ ์•Š์„ ๋•Œ TestBase ํด๋ž˜์Šค์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2017๋…„ 08์›” 25์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: sebastianbergmann/phpunit

| ์งˆ๋ฌธ | ใ…
| --------------------| ---------------
| PHPUnit ๋ฒ„์ „ | 5.7.21
| PHP ๋ฒ„์ „ | 5.6.30
| ์„ค์น˜ ๋ฐฉ๋ฒ• | ์ž‘๊ณก๊ฐ€

์•ˆ๋…•,

ํด๋ž˜์Šค ์ด๋ฆ„์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์“ฐ์ง€ ์•Š์„ ๋•Œ PHPUnit์—์„œ ์ด์ƒํ•œ ๋™์ž‘์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. #731๊ณผ ๊ด€๋ จ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ƒํ™ฉ:

  • 2๊ฐœ์˜ ์ˆ˜์—…์ด ์žˆ์Šต๋‹ˆ๋‹ค.

    • TestBase TestBase.php ํŒŒ์ผ์€ _Test_๋กœ ๋๋‚˜์ง€ ์•Š์œผ๋ฏ€๋กœ ํ˜ธ์ถœํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค.

    • MyTest ChildTest.php ํŒŒ์ผ(์ด๋ฆ„์ด ํ‹€๋ฆฌ๋ฉด). phpunit tests/ ๋ฅผ ํ•˜๋ฉด No tests found in class "Edyan\MyPackage\Tests\TestBase" ๊ฐ€ ๋˜๋ฉฐ ํด๋ž˜์Šค์— ํฌํ•จ๋œ ํ…Œ์ŠคํŠธ๊ฐ€ ์ž˜ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

  • TestBase ๋ฅผ abstract ๋กœ ์„ค์ •ํ•˜๋ฉด ๋ฌธ์ œ ์—†์Šต๋‹ˆ๋‹ค.

  • MyTest ์˜ ์ด๋ฆ„์„ ChildTest ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ๋ฌธ์ œ ์—†์Šต๋‹ˆ๋‹ค.

์–ด๋–ค ์ƒ๊ฐ?
๊ฐ์‚ฌ ํ•ด์š”

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ž์ฒด ํ…Œ์ŠคํŠธ๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๋Š” TestBase ํด๋ž˜์Šค์™€ ๊ฐ™์€ ๊ธฐ๋ณธ ํด๋ž˜์Šค๋Š” abstract ๋กœ ์„ ์–ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ PHPUnit์€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  4 ๋Œ“๊ธ€

์ž‘๊ณก๊ฐ€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— PSR-0/4 ์ž๋™ ๋กœ๋”๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. PSR ํ‘œ์ค€์— ๋”ฐ๋ฅด๋ฉด ํด๋ž˜์Šค์™€ ํŒŒ์ผ ์ด๋ฆ„์ด ์ผ์น˜ํ•˜์ง€ ์•Š์œผ๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๋ณ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ PHPUnit์ด ํŒŒ์ผ๊ณผ ๋‹ค๋ฅธ ์ด๋ฆ„์„ ๊ฐ€์ง„ ํด๋ž˜์Šค๋ฅผ ๋กœ๋“œํ•ด์„œ๋Š” ์•ˆ ๋œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ? ์ž‘๊ณก๊ฐ€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ CDE.php ์— ์žˆ๋Š” ABC ํด๋ž˜์Šค๋ฅผ ๋กœ๋“œํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”

์ž์ฒด ํ…Œ์ŠคํŠธ๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๋Š” TestBase ํด๋ž˜์Šค์™€ ๊ฐ™์€ ๊ธฐ๋ณธ ํด๋ž˜์Šค๋Š” abstract ๋กœ ์„ ์–ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ PHPUnit์€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๊ตฐ์š”. ๋ชจ๋ฒ” ์‚ฌ๋ก€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰