일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- viewmodel
- 테스트
- data
- Dialog
- android
- binding
- activity
- Flutter
- TEST
- Navigation
- livedata
- intent
- drift
- tabbar
- ScrollView
- 계측
- textfield
- Compose
- Coroutines
- 앱바
- textview
- CustomScrollView
- 안드로이드
- DART
- Button
- appbar
- Kotlin
- scroll
- LifeCycle
- 앱
- Today
- Total
목록TEST (6)
Study Record
😶 단위 테스트 전략 좋은 테스트 전략의 핵심은 코드의 여러 경로와 경계를 포괄하는 것이다. 아주 기본적인 수준에서 테스트는 성공 경로, 오류 경로, 경계 사례라는 세가지 시나리오로 분류할 수 있다. 성공 경로(행복한 경로 테스트) 긍정적인 흐름의 기능 테스트에 집중하는 테스트로 긍정적인 흐름은 예외나 오류 조건이 없는 흐름이다. 오류 경로 및 경계 시나리오에 비해 성공 경로 시나리오는 앱의 의도된 동작에 초점을 맞추기 때문에 전체 목옥을 만들기 쉽다. 오류 경로 부정적인 흐름의 기능 테스트, 즉 앱이 오류 조건 또는 잘못된 사용자 입력에 어떻게 응답하는지 확인하는 데 초점을 맞춘다. 의도된 동작이 실행되지 않을 때 발생할 수 있는 결과가 많기 때문에 가능한 오류 흐름을 모두 파악하기란 매우 어렵다. 경..
😶 Compose 이전 환경 설정 class TipUiTest { @get:Rule val composeTestRule = createComposeRule() } 😶 UI 콘텐츠 설정 setContent 안에 UI 구성요소를 호출한다. class TipUiTest { @get:Rule val composeTestRule = createComposeRule() @Test fun calculate_20_percent_tip() { composeTestRule.setContent { TipTimeTheme { TipTimeLayout() } } } } 😶 특정 컴포저블 엑세스하기 onNodeWithText() 메서드로 특정 문자열이 포함된 컴포저블(ex. TextField)을 찾아 performTextInpu..
😶 gradle dependencies testImplementation 'junit:junit:4.+' testImplementation 'androidx.arch.core:core-testing:2.1.0' 😶 LiveData Object 테스트하기 특별한 명시가 없다면, 단위 테스트에서는 모든 것이 메인 스레드(=UI 스레드)에서 실행되는 것으로 가정한다. LiveData 는 값이 변경되는 즉시 UI를 업데이트하는데 UI는 메인 스레드(=UI 스레드)에서 업데이트되어야 한다. 하지만 LiveData 는 메인 스레드에서 엑세스할 수 없기 때문에 메인 스레드를 호출하면 안 된다고 명시해야 한다. 명시는 다음과 같다. class ViewModelTests { @get:Rule var instantTask..
😶 RecyclerView 테스트 import androidx.test.espresso.Espresso.onView import androidx.test.espresso.assertion.ViewAssertions.matches import androidx.test.espresso.contrib.RecyclerViewActions import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.espresso.matcher.ViewMatchers.withText onView(withId(R.id.recycler_vie..
😶 계측 테스트? Android 개발에서 앱을 만들고 실행 테스트를 할 때 직접 사람이 수동으로 앱을 설치하여 테스트할 수 있지만 개발자가 특정 코드가 적절하게 작동하는지 코드로 자동화된 테스트를 할 수 있다. 자동화된 테스트를 하는 2가지 유형이 있는데 바로, 단위 테스트와 계측 테스트이다. 이 중에서 계측 테스트는 사용자 인터페이스(UI, 화면 테스트) 테스트를 하며 수명주기 및 플랫폼 API 와 서비스에 종속된 앱 일부를 테스트할 수 있다. 직접 테스트할 기기가 필요 없는 단위 테스트와 달리 계측 테스트는 기기가 필요하다. Android 에서 계측 테스트를 실행하면 실제 테스트 코드는 일반 Android 앱과 마찬가지로 자체 테스트 APK 에 빌드된다. 😶 계측 테스트 디렉터리 만들기 계측 테스트는..
😶 Android Test Android 에서는 앱 프로젝트를 만들고 직접 설치하여 수동으로 테스트할 수 있지만 자동화된 테스트를 할 수 있다. 자동화된 테스트는 개발자가 작성한 특정 코드가 적절하게 작동하는지 확인하고 프로젝트가 계속 성장하고 변화해도 올바르게 작동하는지 확인하는 코드이다. Android 앱 프로젝트를 처음 만들면 src 디렉터리에 test 및 androidTest 디렉터리를 볼 수 있다. Android 개발은 단위 테스트와 계측 테스트라는 두 가지 유형의 자동화된 테스트가 있는데, test 디렉터리에 있으면 일반적으로 단위 테스트이고 androidTest 디렉터리에 있으면 계측 테스트이다. 테스트에는 로직이 포함되면 안된다. 로직을 테스트만 해야한다. 따라서 테스트에는 조건문이나 fo..