728x90
반응형

ALL 601

JUnit4 함수.

https://junit.org/junit4/ JUnit – About JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks. @Test public void newArrayListsHaveNoElements() { assertThat(new ArrayList ().size(), is(0)); } @Test public void sizeReturnsNum junit.org Junit4 애노테이션 @BeforeClass : 테스트 클래스 내에서 수행 전 한 번만 실행, static method 여야 함 @AfterClass : 테스트 ..

TDD 참고 URL

https://jade314.tistory.com/entry/TDD-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%A3%BC%EB%8F%84-%EA%B0%9C%EB%B0%9C?category=1022802 TDD 테스트 주도 개발 테스트 주도 개발의 진행 방식 질문(Ask): 테스트 작성을 통해 시스템에 질문한다. (테스트 수행 결과는 실패) 응답(Respond): 테스트를 통과하는 코드를 작성해서 질문에 대답한다. (테스트 성공) 정 jade314.tistory.com https://repo.yona.io/doortts/blog/issue/2 1장 - 테스트주도개발 Test Driven Development 이전: ["TDD 실천법과 도구" 책 전체를 PDF 공개합니다](https://rep..

AndroidX 테스트용 ViewModel, Live Data 테스트

ViewModel과 LiveData. 에대한 테스트를 작성하는 방법 https://developer.android.com/codelabs/advanced-android-kotlin-training-testing-basics#7 Advanced Android in Kotlin 05.1: Testing Basics | Android Developers Learn the basics of testing your Android Kotlin apps. In this codelab you’ll learn to run tests, write basic tests, work with AndroidX Test, as well as test ViewModel and LiveData. developer.android.com..

단위테스트? : ( Mock ) 02 , 테스트 적용과정.

단위 테스트 단위의 기준 목의 기준을 팀내에서 협의를 통해 지정할 필요가 있다. 행동을( controler ) 기준으로 할 것인지. 기존 클래스 모두 모킹을 할 것인지. 또는 외부 API, IO 통신의 응답에 따른 결과만 모킹을 할 것인지 정한다. * API / IO 관련 - 실제 응답을 바탕으로 Test 코드를 작성한다. 1. 성공한 케이스 2. 실패한 케이스 3. 예외 발생 케이스 등을 예측하여 테스트 케이스를 구현. * 기능을 하나 하나 만들때 성공 사례 실패사례 예외사례를 예측을 해서 단위테스트를 만든다. 그 기능의 함수를 각각 호출하면서 예상결과와 예외를 만들어 테스트 하면 아무래도 완성도나, 안정성이 높아지지 않을까 하는 생각이 든다. 안드로이드 디벨롭에서 테스트 과정 Give, When, T..

Mocking 및 Unit test 작성 01

Mockito ?? Mock 을 지원하는 프레임 워크 Mock : 진짜 객체와 비슷하게 동작하지만 프로그래머가 직접, 그 객체의 행동을 관리하는 객체. Mockito : Mock 객체를 쉽게 만들고 관리하고 검증할 수 있는 방법을 제공한다 . 위 그림과 같이 test 위치에 만들어서 실행 할 수 있다. 또는 클래스에 Alt + Enter 테스팅 라이브러리로 Junit4 사용 실습 1. @RunWith(MockitoJUnitRunner::class) 를 선언 @RunWith란? JUnit 프레임워크의 테스트 실행방법을 확장할 때 사용하는 어노테이션 즉, ApplicationContext를 만들고 관리하는 작업을 @RunWith(SpringRunner.class)에 설정된 class로 이용하겠다는 뜻입니다...

Mockito 설치

Gradle 설정 Android Studio 프로젝트의 build.gradle에 다음과 같이 의존성을 설정합니다. testImplementation 'junit:junit:4.12' // junit androidTestImplementation("org.mockito:mockito-android:2.24.5") testImplementation 'org.mockito:mockito-inline:2.21.0' org.mockito:mockito-core를 사용해도 되지만 kotlin을 사용하는 경우 org.mockito:mockito-inline를 사용하는 것이 좋습니다. (참고: Mockito cannot mock/spy final class error) testImplementation 'org.moc..

DI ) Dagger2의 5가지 필수 개념

출처 : https://jaejong.tistory.com/125?category=873925#Dagger [Android][Kotlin] Dagger2 #1 - 기본 개념 Dagger2 #1 - 기본 개념 Dagger 관련 글 DI (Dependency Injection) - 의존성 주입 Dagger2 #1 - 기본 개념 (현재 글) Dagger2 #2 - Scope / Binds / MultiBinding Dagger2 #3 - @Named @Qualifier Dagger2 #4 -.. jaejong.tistory.com Dagger 5가지 필수 개념 Inject Component SubComponent Module Scope Inject @Inject는 필드, 생성자, 메서드에 붙여 Componen..

DI ) Dagger2 란?

Dagger2란? 의존성 주입을 체계적으로 할 수 있도록 만들어진 프레임워크 의존성 주입이란 외부에서 의존 객체를 생성하여 넘겨주는 것을 의미합니다. 예를들어 A Class가 B Class를 의존할 때 B Object를 A가 직접 생성하지 않고 외부에서 생성하여 넘겨주면 의존성을 주입했다고 합니다. DI를 위해서는 객체를 생성하고 넘겨주는 외부의 무언가가 필요합니다. 이것이 DI Framework가 하는 일입니다. 외부에서 넘겨주는 무언가를 스프링에서는 컨테이너, Dagger에서는 Component와 Module이라고 부릅니다. DI는 이렇게 의존성이 있는 객체의 제어를 외부 Framework로 올리면서 IoC 개념을 구현합니다. IoC는 Inversion of Control(제어의 역전)의 준말입니다...

728x90
반응형