단위테스트의 유형

CODEDRAGON Development/Software Engineering

반응형

 

단위테스트의 유형

유형

설명

In container Test

·       자바 애플리케이션에서는 주로 JUnit 같은 xUnit 시리즈의 단위 테스트 프레임워크를 사용하는데, Tomcat이나 WebLogic 같은 미들웨어위에서 작동하는 애플리케이션의 경우 테스트가 반드시 해당 미들웨어 위에서 동작해야 합니다.

Mock up

·       단위 테스트는 소프트웨어 구성 요소의 컴포넌트를 독립된 환경에서 테스트하는 것입니다.

·       일반적으로 소프트웨어 컴포넌트는 혼자서 동작할 없고 다른 컴포넌트에 대해서 종속성(Dependency) 가지고 있기 때문에 종속관계에 있는 컴포넌트가 완성되지 않거나 컴포넌트에 오류가 있으면 정상적으로 테스트를 진행할 없습니다. 이런 경우에 가상의 테스트용 클래스와 메서드를 구현하는데, 이를 Mock up Class라고 합니다. Mock up 경우 Class Method 정의는 있지만, 비지니스 로직은 구현되어 있지 않고, input 대해서 정해진 output 값만을 내는 형식이 됩니다. 이러한 Mock-up Class 직접 구현할 수도 있지만, EasyMock (http:/www.easymock.org) 같은 프레임워크를 사용하면 조금 쉽게 구현할 있습니다.

Continuous Integration(CI)

·       구현이 끝난 코드는 단위 테스트를 통해서 검증을 하고, 소스 관리 시스템에 저장(Commit) 하게 됩니다. 저장된 소스코드는 다른 사람이 작성한 소스 코드와 함께 다시 컴파일이 되서 모든 단위테스트를 다시 거치게 됩니다. 이번 저장에 작성한 단위 테스트를 포함해서 이를 포함한 예전 단위 테스트까지 모두 같이 테스트하는 것을 Regresion Test(회귀 테스트)라고 합니다.

·       회귀 테스트 하는 이유는 예전 코드의 변경이 없더라도 새로운 코드가 기존 로직에 영향을 있기 때문에, 코드가 기존 코드에 대해서 결함을 발생시키지 않았음을 검증하기 위해서 수행합니다. 이러한 일련의 과정은 보통 자동화된 환경에서 이루어지는데 이를 Continuous Integration-CI라고 합니다.

 

 


반응형