-
고품격 Kotlin 개발: 테스트 코드를 우아하게 작성하는 방법세미나, 영상 요약정리 2023. 1. 10. 00:01728x90
https://www.youtube.com/watch?v=PqA6zbhBVZc
테크코스교육개발팀의 박재성님의 영상을 요약한 내용입니다.
코틀린에서 단위 테스트 이름
fun `단위 테스트 이름`(){ }
백틱(`)을 활용하여 한글로 작성할 수 있습니다.
테스트 팩토리
테스트 픽스처를 반환하는 팩토리 함수를 만들 수 있습니다.
코틀린의 기본 인자를 활용하여 빌더 패턴처럼 사용할 수 있습니다.
Soft Assertion
일부 Assertion에 실패하더라도 동작이 모두 수행되도록 합니다. (코드가 즉시 중지되지 않음)
이때 어떤 property 때문에 실패했는지 알아차리기 어려운데 이때 data 클래스로 만들어 비교하면 확인하기 쉬워집니다.
코틀린에서는 Kotest와 MockK
Kotlin의 테스트 라이브러리로 가장 많이 Kotest가 사용됩니다.
이때 Kotest를 활용하면 스마트 캐스팅을 지원합니다.
다양한 Spec을 지원하기 때문에 선호하는 Spec을 활용할 수 있습니다.
Mociko 대신에 MockK를 사용할 수 있습니다.
Mockito는 final 클래스와 final 메서드는 모킹할 수 없으며 Kotlin의 확장함수도 스텁 할 수 없습니다.
Kotest의 격리 모드
SingleInstance(기본), InstancePreLeaf, InstancePerTest 세 가지 옵션이 있습니다.
모의 객체를 만드는데 비용이 많이 든다면 SingleInstance를 선택하고 clearMocks()을 호출하는 방법이 있습니다.
통합 테스트
코틀린에서는 @TestConstructor를 사용하지 않아도 생성자 주입이 가능합니다.
728x90'세미나, 영상 요약정리' 카테고리의 다른 글
k8s와 gitlab(+ArgoCO)을 이용한 CI/CD 모험기 - 손주호 (0) 2023.01.29 클라우드 환경에서의 Kafka 운영기 (0) 2023.01.23 Kotlin Coroutines 톺아보기 (0) 2022.12.28 CQRS 아는 척하기 - 최범균 (0) 2022.12.09 [우아콘2020] 배달의민족 마이크로서비스 여행기 - 김영한 (0) 2022.11.29