0Pricing
PHP Academy · 강의

검증문 및 테스트 메서드

assertEquals, assertSame, assertNull 및 기타 검증문을 사용합니다.

검증문 및 테스트 메서드은(는) CoddyKit의 무료 PHP Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 PHP Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. PHP Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

검증이란 무엇입니까

검증은 코드의 실제 출력이 예상 값과 일치하는지 확인합니다. PHPUnit은 다양한 검증 메서드 라이브러리를 제공합니다.

assertEquals와 assertSame 비교

assertEquals는 느슨한 비교(==)를 사용합니다. assertSame은 엄격한 비교(===)를 사용하여 자료형 AND 값을 확인합니다.

<?php
$this->assertEquals(0, false);      // passes (0 == false)
$this->assertSame(0, false);        // FAILS  (0 !== false)

assertTrue 및 assertFalse

값이 정확히 true인지 또는 정확히 false인지 테스트합니다.

<?php
$this->assertTrue(is_string("hello"));
$this->assertFalse(is_numeric("abc"));

assertNull 및 assertNotNull

값이 null인지 확인합니다.

<?php
$user = $repo->find(999);
$this->assertNull($user);

$user = $repo->find(1);
$this->assertNotNull($user);

assertCount

셀 수 있는 값의 요소 개수가 예상한 수인지 검증합니다.

<?php
$items = $cart->getItems();
$this->assertCount(3, $items);

assertStringContainsString

문자열에 하위 문자열이 포함되어 있는지 검증합니다(대소문자를 구분합니다).

<?php
$html = $template->render();
$this->assertStringContainsString("<h1>Welcome</h1>", $html);

assertInstanceOf

객체가 지정된 클래스 또는 인터페이스의 인스턴스인지 검증합니다.

<?php
$handler = $factory->create("email");
$this->assertInstanceOf(EmailHandler::class, $handler);

assertThrows / expectException

테스트 중에 예외가 발생할 것으로 예상합니다.

<?php
public function test_throws_on_invalid_input(): void
{
    $this->expectException(\InvalidArgumentException::class);
    $this->expectExceptionMessage("must be positive");
    new Product(-1);
}

assertArrayHasKey

배열에 특정 키가 포함되어 있는지 확인합니다.

<?php
$result = $api->getUser(1);
$this->assertArrayHasKey("email", $result);
$this->assertArrayHasKey("id", $result);

assertEqualsWithDelta

허용 오차(델타) 범위 내에서 부동소수점 수를 비교합니다.

<?php
$this->assertEqualsWithDelta(3.14159, M_PI, 0.001);

사용자 지정 실패 메시지

테스트 실패 출력을 개선하려면 모든 검증의 마지막 인수로 메시지를 전달합니다.

<?php
$this->assertEquals(200, $response->status(), "Expected HTTP 200 OK response");

요약

엄격한 동등성에는 assertSame을, 느슨한 비교에는 assertEquals를 사용하고, 표현력 있는 테스트에는 assertInstanceOf, assertCount, assertThrows 같은 특화된 검증을 사용합니다.

빠른 확인

값의 자료형도 확인하는 검증은 무엇입니까?

자주 묻는 질문

“검증문 및 테스트 메서드” 강의는 무료인가요?

네 — “검증문 및 테스트 메서드” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 PHP Academy 강의 전체를 잠금 해제할 수 있습니다. PHP Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“검증문 및 테스트 메서드”에서 뭘 배우나요?

assertEquals, assertSame, assertNull 및 기타 검증문을 사용합니다. 브라우저에서 직접 실행하는 실습 코드로 PHP Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

PHP Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 PHP Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“검증문 및 테스트 메서드” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 PHP Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 PHP Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. PHPUnit 설정 및 첫 테스트
  2. 검증문 및 테스트 메서드
  3. 매개변수화된 테스트를 위한 데이터 제공자
  4. PHPUnit으로 의존성 모의 객체 만들기
← PHP Academy(으)로 돌아가기