테스트 컨테이너(Test container)는 소프트웨어 개발에서 사용되는 개념으로, 특정 기능이나 모듈을 독립적으로 테스트하기 위한 환경을 말합니다. 이는 보통 가상화 기술을 이용하여 구현되며, 테스트 대상이 되는 소프트웨어의 외부 환경을 완벽하게 모방하여 테스트를 수행할 수 있도록 합니다.주요 특징과 사용 예시독립적 환경 제공: 테스트 컨테이너는 외부 의존성을 최소화하고, 특정 기능을 테스트하기 위한 최적의 환경을 제공합니다. 예를 들어, 데이터베이스나 메시지 브로커 등의 외부 서비스에 대한 테스트를 할 때 유용합니다.가상화 기술 활용: 대표적으로 Docker 컨테이너가 사용됩니다. Docker는 가상화된 환경을 제공하여 개발 환경을 일관되게 유지하고, 테스트 간의 격리를 보장합니다.통합 테스트 및 ..
정수형을 가지고 계산기를 만들어 보겠습니다. 1. 덧셈테스트를 먼저 작성합니다.@Testpublic void 정수형_두_개로_덧셈을_한다_1(){ int result = new Calculator().add(3, 4); assertEquals(7, result);}@Testpublic void 정수형_두_개로_덧셈을_한다_2(){ int result = new Calculator().add(8, 4); assertEquals(12, result);} 개발 순서는 _1 작성 -> 소스 코드 작성 -> 테스트 성공 -> _2 작성 -> 테스트 실패 -> 소스 코드 리팩터링 -> 테스트 성공 입니다. 완성된 소스 코드는 아래와 같습니다. public int add(int a, int b)..
프로그래밍에서 "하니스(Harness)"는 소프트웨어 테스트와 관련된 용어로, 일반적으로 테스트 하니스(Test Harness)라고 불립니다. 테스트 하니스는 특정 프로그램이나 시스템의 동작을 테스트하기 위해 필요한 환경과 도구들을 포함한 프레임워크입니다. 이 프레임워크는 테스트 케이스를 실행하고 결과를 분석하는 데 도움을 줍니다. 테스트 하니스의 주요 목적은 테스트 자동화와 테스트 결과의 일관성 있는 수집을 지원하는 것입니다.테스트 하니스의 구성 요소테스트 스크립트(Test Scripts): 실제로 테스트를 실행하는 코드로, 테스트 케이스를 정의하고 시스템에 대한 다양한 입력을 제공합니다.드라이버(Drivers): 테스트 대상 시스템(또는 프로그램)을 실행하고 제어하는 역할을 합니다. 드라이버는 테스트..
블랙박스 테스트(Black-box testing)는 소프트웨어 테스트의 한 유형으로, 소프트웨어의 내부 동작 및 구현 세부 사항을 고려하지 않고 기능적인 측면에 중점을 둔 테스트 방법입니다. 테스트는 소프트웨어의 입력과 출력을 검증하여 시스템이 요구사항을 충족하는지를 확인합니다. 블랙박스 테스트는 소프트웨어가 사용자의 기대에 부합하는지를 평가하며, 내부 구현에 대한 지식이 필요하지 않습니다. 블랙박스 테스트의 주요 특징과 방법은 다음과 같습니다. 테스트 대상 블랙박스 테스트는 주로 소프트웨어의 외부 기능을 검증합니다. 소프트웨어의 인터페이스, 입력 및 출력, 기능, 성능 등이 테스트 대상이 됩니다. 테스트 수준 기능 테스트(Functional Testing): 소프트웨어의 특정 기능이 요구사항과 일치하는..