<?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%3A14.1</id>
	<title>PHPUnitManual:14.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%3A14.1"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:14.1&amp;action=history"/>
	<updated>2026-05-02T14:01:57Z</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:14.1&amp;diff=3427&amp;oldid=prev</id>
		<title>Onionmixer: PHPUnit 14.1 Cover 대상 메소드의 지정 페이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=PHPUnitManual:14.1&amp;diff=3427&amp;oldid=prev"/>
		<updated>2013-07-04T09:11:22Z</updated>

		<summary type="html">&lt;p&gt;PHPUnit 14.1 Cover 대상 메소드의 지정 페이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;14.1 Cover 대상 메소드의 지정&lt;br /&gt;
&lt;br /&gt;
@covers 선언 (annotation) ( Table B.1 &amp;quot;Cover 대상 메소드를 지정하기 위한 선언&amp;quot; 를 참조하세요) 를 사용하면, 해당 테스트 메소드가 어떤 메소드를 테스트할지를 지정할 수 있습니다. 이를 지정하면, 지정한 메소드의 Code coverage 정보만을 고려합니다. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
예14.2 &amp;quot;대상 메소드를 지정한 테스트&amp;quot; 가 그 예입니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
예14.2 대상 메소드를 지정한 테스트&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
require_once &amp;#039;BankAccount.php&amp;#039;;&lt;br /&gt;
 &lt;br /&gt;
class BankAccountTest extends PHPUnit_Framework_TestCase&lt;br /&gt;
{&lt;br /&gt;
    protected $ba;&lt;br /&gt;
 &lt;br /&gt;
    protected function setUp()&lt;br /&gt;
    {&lt;br /&gt;
        $this-&amp;gt;ba = new BankAccount;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    /**&lt;br /&gt;
     * @covers BankAccount::getBalance&lt;br /&gt;
     */&lt;br /&gt;
    public function testBalanceIsInitiallyZero()&lt;br /&gt;
    {&lt;br /&gt;
        $this-&amp;gt;assertEquals(0, $this-&amp;gt;ba-&amp;gt;getBalance());&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    /**&lt;br /&gt;
     * @covers BankAccount::withdrawMoney&lt;br /&gt;
     */&lt;br /&gt;
    public function testBalanceCannotBecomeNegative()&lt;br /&gt;
    {&lt;br /&gt;
        try {&lt;br /&gt;
            $this-&amp;gt;ba-&amp;gt;withdrawMoney(1);&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        catch (BankAccountException $e) {&lt;br /&gt;
            $this-&amp;gt;assertEquals(0, $this-&amp;gt;ba-&amp;gt;getBalance());&lt;br /&gt;
 &lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        $this-&amp;gt;fail();&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    /**&lt;br /&gt;
     * @covers BankAccount::depositMoney&lt;br /&gt;
     */&lt;br /&gt;
    public function testBalanceCannotBecomeNegative2()&lt;br /&gt;
    {&lt;br /&gt;
        try {&lt;br /&gt;
            $this-&amp;gt;ba-&amp;gt;depositMoney(-1);&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        catch (BankAccountException $e) {&lt;br /&gt;
            $this-&amp;gt;assertEquals(0, $this-&amp;gt;ba-&amp;gt;getBalance());&lt;br /&gt;
 &lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        $this-&amp;gt;fail();&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    /**&lt;br /&gt;
     * @covers BankAccount::getBalance&lt;br /&gt;
     * @covers BankAccount::depositMoney&lt;br /&gt;
     * @covers BankAccount::withdrawMoney&lt;br /&gt;
     */&lt;br /&gt;
 &lt;br /&gt;
    public function testDepositWithdrawMoney()&lt;br /&gt;
    {&lt;br /&gt;
        $this-&amp;gt;assertEquals(0, $this-&amp;gt;ba-&amp;gt;getBalance());&lt;br /&gt;
        $this-&amp;gt;ba-&amp;gt;depositMoney(1);&lt;br /&gt;
        $this-&amp;gt;assertEquals(1, $this-&amp;gt;ba-&amp;gt;getBalance());&lt;br /&gt;
        $this-&amp;gt;ba-&amp;gt;withdrawMoney(1);&lt;br /&gt;
        $this-&amp;gt;assertEquals(0, $this-&amp;gt;ba-&amp;gt;getBalance());&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
특정 테스트에 대해, 어떤 메소드도 테스트하지 않도록 지정할 수도 있습니다. 이 경우에는 @coversNothing 선언을 사용할 수 있습니다 ( &amp;quot;@coversNothing&amp;quot; 을 참조하세요). 결합 테스트를 작성하는 도중에, 하나의 단위 테스트에 대한 Code coverage 를 생성할 때 유용합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
예14.3 어떤 메소드도 테스트하지 않도록 지정된 테스트&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
class GuestbookIntegrationTest extends PHPUnit_Extensions_Database_TestCase&lt;br /&gt;
{&lt;br /&gt;
    /**&lt;br /&gt;
     * @coversNothing&lt;br /&gt;
     */&lt;br /&gt;
    public function testAddEntry()&lt;br /&gt;
    {&lt;br /&gt;
        $guestbook = new Guestbook();&lt;br /&gt;
        $guestbook-&amp;gt;addEntry(&amp;quot;suzy&amp;quot;, &amp;quot;Hello world!&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
        $queryTable = $this-&amp;gt;getConnection()-&amp;gt;createQueryTable(&lt;br /&gt;
            &amp;#039;guestbook&amp;#039;, &amp;#039;SELECT * FROM guestbook&amp;#039;&lt;br /&gt;
        );&lt;br /&gt;
        $expectedTable = $this-&amp;gt;createFlatXmlDataSet(&amp;quot;expectedBook.xml&amp;quot;)&lt;br /&gt;
                              -&amp;gt;getTable(&amp;quot;guestbook&amp;quot;);&lt;br /&gt;
        $this-&amp;gt;assertTablesEqual($expectedTable, $queryTable);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&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>