<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=PHPUnitManual%3A7.1</id>
	<title>PHPUnitManual:7.1 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=PHPUnitManual%3A7.1"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:7.1&amp;action=history"/>
	<updated>2026-05-02T07:19:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:7.1&amp;diff=3393&amp;oldid=prev</id>
		<title>Onionmixer: PHPUnit 7.1 파일 시스템을 사용한 test suite 구성 페이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:7.1&amp;diff=3393&amp;oldid=prev"/>
		<updated>2013-07-02T08:10:09Z</updated>

		<summary type="html">&lt;p&gt;PHPUnit 7.1 파일 시스템을 사용한 test suite 구성 페이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;7.1 파일 시스템을 사용한 test suite 구성&lt;br /&gt;
&lt;br /&gt;
test suite 를 구성하는 가장 간단한 방법은, 모든 테스트 케이스의 소스 파일을 하나의 디렉토리에 포함시키는 것일 것입니다. PHPUnit 은 테스트 디렉토리를 재귀적으로 탐색하여 자동으로 테스트를 발견하고 실행합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Object_Freezer 라이브러리의 test suite 를 봅시다. 이 프로젝트의 디렉토리 구성을 보면, 테스트 케이스 클래스가 &amp;quot;Test&amp;quot; 디렉토리 안에 모여져 있음을 알 수 있습니다. 내부의 디렉토리 구조는, 테스트 대상 시스템 (SUT) 가 존재하는 &amp;quot;Object&amp;quot; 디렉토리의 구조와 동일합니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Object                              Tests&lt;br /&gt;
|-- Freezer                         |-- Freezer&lt;br /&gt;
|   |-- HashGenerator               |   |-- HashGenerator&lt;br /&gt;
|   |   `-- NonRecursiveSHA1.php    |   |   `-- NonRecursiveSHA1Test.php&lt;br /&gt;
|   |-- HashGenerator.php           |   |&lt;br /&gt;
|   |-- IdGenerator                 |   |-- IdGenerator&lt;br /&gt;
|   |   `-- UUID.php                |   |   `-- UUIDTest.php&lt;br /&gt;
|   |-- IdGenerator.php             |   |&lt;br /&gt;
|   |-- LazyProxy.php               |   |&lt;br /&gt;
|   |-- Storage                     |   |-- Storage&lt;br /&gt;
|   |   `-- CouchDB.php             |   |   `-- CouchDB&lt;br /&gt;
|   |                               |   |       |-- WithLazyLoadTest.php&lt;br /&gt;
|   |                               |   |       `-- WithoutLazyLoadTest.php&lt;br /&gt;
|   |-- Storage.php                 |   |-- StorageTest.php&lt;br /&gt;
|   `-- Util.php                    |   `-- UtilTest.php&lt;br /&gt;
`-- Freezer.php                     `-- FreezerTest.php&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PHPUnit 의 command-line test runner 에 테스트 디렉토리를 지정하면 이 라이브러리의 모든 테스트가 실행됩니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
phpunit Tests&lt;br /&gt;
PHPUnit 3.7.0 by Sebastian Bergmann.&lt;br /&gt;
&lt;br /&gt;
............................................................ 60 / 75&lt;br /&gt;
...............&lt;br /&gt;
&lt;br /&gt;
Time: 0 seconds&lt;br /&gt;
&lt;br /&gt;
OK (75 tests, 164 assertions)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;#039;&amp;#039;&amp;#039;주의사항&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
:PHPUnit 의 comman-line test runner 에 디렉토리를 지정하면, 해당 디렉토리 내부의 *Test.php 를 검색하여 실행합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tests/FreezerTest.php 안의 테스트 케이스 클래스인 Object_FreezerTest 에 선언된 테스트를 실행하기 위해서는, 다음 명령어를 실행하면 됩니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
phpunit Tests/FreezerTest&lt;br /&gt;
PHPUnit 3.7.0 by Sebastian Bergmann.&lt;br /&gt;
&lt;br /&gt;
............................&lt;br /&gt;
&lt;br /&gt;
Time: 0 seconds&lt;br /&gt;
&lt;br /&gt;
OK (28 tests, 60 assertions)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
보다 자세하게 테스트를 지시하기 위해서, --filter 스위치를 사용할 수 있습니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
phpunit --filter testFreezingAnObjectWorks Tests&lt;br /&gt;
PHPUnit 3.7.0 by Sebastian Bergmann.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Time: 0 seconds&lt;br /&gt;
&lt;br /&gt;
OK (1 test, 2 assertions)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;#039;&amp;#039;&amp;#039;주의사항&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
:이 방식의 결점은, 테스트의 실행 순서를 제어할 수 없다는 것입니다. 이 때문에, 테스트의 의존성에 관한 문제가 발생할 수 있습니다. &amp;quot;테스트의 의존성&amp;quot; 을 참조해 주세요. 다음 절에서는 테스트의 실행 순서를 XML 설정 파일로 명시적으로 지정하는 방법을 설명합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:PHPUnitManual]]&lt;/div&gt;</summary>
		<author><name>Onionmixer</name></author>
	</entry>
</feed>