2021. 1. 18. 16:26ㆍAndroid/UnitTest, UiTest
안드로이드 테스트 종류
1. Unit 테스트
- 일반적으로 코드의 유닛 단위(메소드, 클래스, 컴포넌트)의 기능을 실행하는 방식
- 관련 툴 : JUnit, Mockito, PowerMock
2. Ui 테스트
- 사용자 인터랙션(버튼 클릭, 텍스트 입력 등)을 평가
- 관련 툴 : Espresso, UIAutomator, Robotium, Appium, Calabash, Robolectric
1. app 단계의 build.gradledependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
// test implementation
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
test implmentation 주석 아래 3가지 implementation이 테스트를 위해 필요한 라이브러리 입니다. 처음 파일을 만들었을 때 자동으로 설정 되어 일을 수도 있고 없다면 추가해 주세요!
2. Project 파일 단계에서 확인
src/androidTest : Ui 테스트를 진행하는 파일들이 있는 곳
src/test : Unit 테스트를 진행하는 파일들이 있는 곳
3. ExampleUnitTest
class ExampleUnitTest {
@Test
fun addition_isCorrect() {
assertEquals(4, 2 + 2)
}
}
ExampleUnitTest 파일의 모습입니다.
assertEquals(long expected, long actual)는 기대값과 결과값 변수를 파라미터로 받습니다.
ExampleUnitTest 파일의 assertEquals 는 기대값이 4 이고 결과값 2 + 2 인것을 의미합니다.
테스트 파일을 실행 해보면 결과가 참으로 ok 결과가 나오게 됩니다.
4. 테스트 파일 실행하기
ExampleUnitTest 파일을 우클릭 한 후 Run 'ExampleUnitTest' 을 실행해주시면 됩니다.
5. 결과
결과 값이 참인 경우
참이 아닌경우
<참고 자료>