원인 로컬 유닛 테스트는 안드로이드 구성요소를 사용할 수 없습니다. 안드로이드 구성 요소인 android util Log를 찾을 수 없어 에러가 발생합니다. 해결 방법 Unit Test에 사용할 Mock Log 클래스를 생성합니다. /src/test/java/android/util 하위 경로에 아래 소스코드를 추가합니다. package android.util; public class Log { public static int d(String tag, String msg) { System.out.println("DEBUG: " + tag + ": " + msg); return 0; } public static int i(String tag, String msg) { System.out.println("IN..
1. Annotation 2. Mock Object 3. Method Stub 4. Spy Object 5. Assert 6. Verify 3. Method Stub class UnitRepositoryImplTest { @MockK(relaxUnitFun = true) lateinit var unitDataSource: UnitDataSource lateinit var unitRepository: UnitRepository private val unitRequest = "unitId" @Before fun setup() { MockKAnnotations.init(this) unitRepository = UnitRepositoryImpl(unitServiceApi, unitDataSource, sched..
1. Annotation 2. Mock Object 3. Method Stub 4. Spy Object 5. Assert 6. Verify 2. Mock Object class UnitRepositoryImplTest { // Mock 객체 선언 @MockK(relaxUnitFun = true) lateinit var unitDataSource: UnitDataSource lateinit var unitRepository: UnitRepository private val unitRequest = "unitId" @Before fun setup() { MockKAnnotations.init(this) unitRepository = UnitRepositoryImpl(unitServiceApi, unitDat..
유닛 테스트(unit test)는 컴퓨터 프로그래밍에서 소스 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차다. 즉, 모든 함수와 메서드에 대한 테스트 케이스(Test case)를 작성하는 절차를 말한다. 이를 통해서 언제라도 코드 변경으로 인해 문제가 발생할 경우, 단시간 내에 이를 파악하고 바로 잡을 수 있도록 해준다. 유닛 테스트의 목적은 프로그램의 각 부분을 고립 시켜서 각각의 부분이 정확하게 동작하는지 확인하는 것이다. 즉, 프로그램을 작은 단위로 쪼개서 각 단위가 정확하게 동작하는지 검사하고 이를 통해 문제 발생 시 정확하게 어느 부분이 잘못되었는지를 재빨리 확인할 수 있게 해 준다. 따라서 프로그램의 안정성이 높아진다. Wikipedia - Unit Test Why Unit ..
최근 클라이언트팀의 안드로이드 제품에 대한 CI / CD 파이프라인을 구성하면서 우리가 만든 제품에 대한 Unit Test Code Coverage를 알 수 있도록 하자는 요구사항이 있었고, 그것을 실현시키기 위한 조사에 들어갔다. 회사의 안드로이드 프로젝트는 단일 레포지토리, 멀티 모듈 구조를 가지고 있으며, Java와 Kotlin 언어를 모두 사용하고, Gradle 빌드 툴을 사용하고 있다. 구글에 Android Project Code Coverage 측정 방법을 검색하기 시작했고, Gradle 프로젝트에 JaCoCo를 사용하면 측정할 수 있다는 정보를 얻어 회사의 안드로이드 프로젝트에 적용을 시도하였다. 여기서부터 고난과 역경의 시간이 시작되었다. 구글 검색을 통해 얻은 Gradle 프로젝트에 Ja..
- Total
- Today
- Yesterday
- Android
- 안드로이드
- compose ui
- 유닛 테스트
- 안드로이드 커스텀 버튼
- ViewCompositionStrategy
- 테스트
- android test
- android unit test
- 코딩테스트
- 안드로이드 단위 테스트
- 커스텀 버튼
- 안드로이드 유닛 테스트
- 유닛테스트
- 알고리즘 풀이
- 컴포즈 초기화
- unit test
- 안드로이드 컴포즈
- 알고리즘
- Unit
- button padding
- 구글
- AOS
- android compose
- Leetcode
- 안드로이드 테스트
- androud hilt
- android custom button
- 안드로이드 종속성 주입
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |