일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ribs
- Clean Code
- ios
- uitableview
- Human interface guide
- 애니메이션
- swift documentation
- map
- RxCocoa
- 클린 코드
- 리펙터링
- rxswift
- combine
- clean architecture
- collectionview
- swiftUI
- UITextView
- SWIFT
- 리펙토링
- Protocol
- HIG
- MVVM
- UICollectionView
- 스위프트
- Observable
- 리팩토링
- tableView
- Refactoring
- Xcode
- uiscrollview
- Today
- Total
목록NIMBLE (5)
김종권의 iOS 앱 개발 알아가기
1. Quick, Nimble으로 테스트 쉽게하는 방법 - Quick, Nimble 개념 2. Quick, Nimble으로 테스트 쉽게하는 방법 - describe, context, it, beforeEach 실제 코드에 테스트하는 방법 (RxNimble, 비동기 테스트 방법) Quick의 beforeEach 개념 * Quick의 decsribe, context, it 개념은 이전 포스팅 글 참고 beforeEach를 잘 활용하면 각 테스트 케이스마다 쉽게 데이터를 변경해가며 테스트할 수 있으므로 beforeEach를 먼저 이해하기 beforeEach: it() {} 블락이 실행되기전에 모든곳에서 호출됨 afterEach: it() {} 블락이 실행되고난 후 모든곳에서 호출됨 즉, it() 실행 기준으로..
1. Quick, Nimble으로 테스트 쉽게하는 방법 - Quick, Nimble 개념 2. Quick, Nimble으로 테스트 쉽게하는 방법 - describe, context, it, beforeEach 실제 코드에 테스트하는 방법 (RxNimble, 비동기 테스트 방법) Nimble이란? * Nimble (재빠른) 가독성 높은 테스트 assertion 라이브러리 예상한 결과와 실제 결과를 비교하여 테스트를 수행하고, 테스트가 성공한 경우 상세한 정보를 제공 글을 읽는 것처럼 쉽게 읽히는 assertion들을 제공 대표적으로 expect()와 뒤에 to, toNot, notTo 등이 존재 import Nimble expect(seagull.squawk).to(equal("Squee!")) expec..
1. 유닛 테스트 방법 - Dependency Injection (@Injected) 주입 구조 2. 유닛 테스트 방법 - Quick과 Nimble을 이용한 테스트 코드 구현 방법 2 expect("seahorse").to(contain("sea")) expect(["Atlantic", "Pacific"]).toNot(contain("Mississippi")) expect(ocean.isClean).toEventually(beTruthy()) expect(seagull.squawk).toNot(equal("Oh, hello there!")) expect(seagull.squawk).notTo(equal("Oh, hello there!")) ex) nimble까지 적용한 예제 final class Some..
* 사용되는 라이브러리 - RxSwift - RxCocoa - RxTest (RxSwift의 스트림들을 테스트 할 수 있는, 가상 시간을 함께 이벤트를 발생시킬 수 있는 프레임워크) - RxNimble (expect라는 함수로 명료하게 테스트를 할 수 있게 해주는 프레임워크) 1. 간단한 RxSwift, MVVM구조 설계 RxSwift구조 코드 참고: ios-development.tistory.com/173 2. Unit 테스트 코드 작성 1) Nimble프레임워크에서 사용 할 events함수 정의 import Foundation import RxSwift import RxTest import Nimble import RxNimble // Tests그룹 하위에, ExpectationExtensions.s..
테스트 대상 코드 class Converter { func starPrint(number: Int) -> String { return String(repeating: "*", count: number) } } Nimble 프레임워크 Nimble: "재빠른" 다양한 assertion 제공 가독성 좋은 실패 메세지 제공: (XCTAssert에서는 실패 메세지를 따로 정의해주어야 확인이 쉬움) - XCTAssertTrue(result, "1") // 틀린경우 "XCTAssertTrue failed" - XCTAssertTrue(result, "1", "입력값에 대한 값이 틀림") // 틀린경우 아래와 같은 메세지 func testExample() throws { let result = converter?.st..