<?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%3A15.1</id>
	<title>PHPUnitManual:15.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%3A15.1"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:15.1&amp;action=history"/>
	<updated>2026-05-02T08:35:18Z</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:15.1&amp;diff=3432&amp;oldid=prev</id>
		<title>Onionmixer: PHPUnit 15.1 애자일 문서 작성 페이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:15.1&amp;diff=3432&amp;oldid=prev"/>
		<updated>2013-07-04T09:17:24Z</updated>

		<summary type="html">&lt;p&gt;PHPUnit 15.1 애자일 문서 작성 페이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;15.1 애자일 문서 작성 (Agile Documentation)&lt;br /&gt;
&lt;br /&gt;
일반적으로, Extreme Programming 과 같은 애자일 프로세스를 채용한 프로젝트에서는, 문서의 내용이 실제 설계와 코드를 반영하지 못 하는 경우가 많습니다. Extreme Programming 에서는 코드의 공동 소유 (collective code ownership) 가 요구되고, 모든 개발자가 시스템 전체의 동작을 파악할 필요가 있습니다. 작성할 테스트에 대해, 해당 클래스가 무엇을 하는 클래스인지를 한 눈에 알 수 있는 &amp;quot;명확한&amp;quot; 클래스명을 붙인다면, PHPUnit 의 TestDox 기능을 사용하여 자동적으로 문서를 생성할 수 있습니다. 이 문서는 개발자들에게 프로젝트의 각 클래스가 어떻게 동작해야 할지를 파악할 수 있습니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PHPUnit 의 TestDox 기능은, 테스트 클래스 내부의 모든 테스트 메소드의 이름을 추출하여 PHP 의 메소드 형식에서 일반 영어 문장 형식으로 변환합니다. 예를 들어, testBalanceIsInitiallyZero() 가 &amp;quot;Balance is initially zero&amp;quot; 로 변환됩니다. 마지막 숫자만 다른 메소드가 존재할 경우 (예: testBalanceCannotBecomeNegative() 와 testBalanceCannotBecomeNegative2()), 문장 &amp;quot;Balance cannot become negative&amp;quot; 는 한 번만 표시되어 모든 테스트가 성공했음을 나타냅니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
BankAccount 클래스 (from 예12.1 &amp;quot;BankAccount 클래스의 테스트&amp;quot; 를 참조하세요) 의 애자일 문서는 다음과 같습니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
phpunit --testdox BankAccountTest&lt;br /&gt;
PHPUnit 3.7.0 by Sebastian Bergmann.&lt;br /&gt;
&lt;br /&gt;
BankAccount&lt;br /&gt;
 [x] Balance is initially zero&lt;br /&gt;
 [x] Balance cannot become negative&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
또한, 애자일 문서를 HTML 이나 PLAIN TEXT 형식으로 작성하여 파일 출력할 수도 있습니다. 이 경우, 인수 --testdox-html 이나 --testdox-text 를 사용합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
애자일 문서는, 프로젝트에서 사용하는 외부 패키지에 기대되는 동작을 정리한 문서가 될 수도 있습니다. 외부 패지키는, 해당 패키지가 기대와 다르게 동작할 수도 있다는 리스크를 가집니다. 패키지의 버젼 업에 의해 동작이 변할 수도 있고, 그로 인해 당신의 코드가 오동작할 수도 있습니다. 이러한 일을 방지하기 위해, &amp;quot;이 패키지는 이렇게 동작할 것이다&amp;quot; 라는 것을 test case 로 작성해 둡니다. 테스트가 성공한다면, 기대대로 동작하고 있다는 것을 확인할 수 있습니다. 만약 패키지의 사양을 전부 테스트로 기술할 수 있다면, 외부 패키지가 장래에 버젼 업 되더라도 문제는 발생하지 않을 것입니다. 테스트를 통관했다는 것은, 시스템이 기대대로 동작할 것을 의미하기 때문입니다.&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>