이번에 ROOM을 앱에 도입하기 위해 우선 JUNIT TEST를 도입하려고 합니다. junit test를 도입한 적이 개발 하면서 처음입니다. 로컬 단위 테스트로 앱 로직 단위를 평가하는 방법입니다.
종속 항목 유형에 따라서 Robolectric, Mockito 같은 모의 프레임 워크를 사용하는 것은 배제하고 가장 기본적인 junit test 방법에 대해 보겠습니다.
로컬 단위 테스트의 소스 파일의 위치는 module-name/src/test/java 에 저장 해야 합니다
해당 부분은 프로젝트 생성시 자동으로 함께 생성되는 부분이라 생성 하지 않으셔도 됩니다.
test class만 따로 추가하는 방식으로 진행하면 됩니다.
plugins {
...
id("kotlin-kapt")
..
}
defaultConfig {
...
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
...
}
dependency {
testImplementation("junit:junit:4.13.2")
}
test
키워드를 항상 붙입니다junit.framework
또는 junit.extensions
패키지 클래스를 사용합니다@Test
주석으로 시작하여 테스트할 구성요소의 단일 기능을 사용하고 확인할 코드를 첨부합니다. import com.google.common.truth.Truth.assertThat
import org.junit.Test
class EmailValidatorTest {
@Test
fun emailValidator_CorrectEmailSimple_ReturnsTrue() {
assertThat(EmailValidator.isValidEmail("name@email.com")).isTrue()
}
}