단위 테스트에 대해 공부하던 중 Mock와 Stub 용어에 대해 공부한 포스팅입니다. 차이점 목(Mock)은 외부로 나가는 상호 작용을 모방하고 검사하는 데 도움이 됩니다. 예시로는 이메일이나 슬랙 발송이 있습니다. 스텁(Stub)은 내부로 들어오는 상호 작용을 모방하는 데 도움이 됩니다. 예시로는 데이터베이스에서 데이터를 검색하는 행위가 있습니다. 또한, 스텁은 SUT와 관련 의존성 간의 상호 작용을 모방만 하는 반면에 목은 모방과 검사를 함께 합니다. Mock이라는 단어는 두루두루 쓰인다. 책을 접했을 때 헷갈렸던 것 중에 하나가 바로 mockito 라이브러리에서 제공하는 Mock 어노테이션입니다. 책에서 나왔던 이야기를 인용하자면 "실제 목을 만드는 데 도움이 되지만, 그 자체로는 목이 아니다" 라..
단위 테스트에 대해 공부하던 중 테스트 스위트라는 용어에 대해 공부한 포스팅입니다. 단위 테스트 - 예스24 소프트웨어 개발에 있어 단위 테스트는 이제 선택이 아니라 필수가 됐다. 단위 테스트에 대한 오해를 바로잡고, 올바른 단위 테스트에 대한 원칙, 테스트를 작성하는 스타일과 효과적인 테스트 m.yes24.com 테스트 스위트 테스트 케이스들을 하나로 묶은 것입니다. 테스트 케이스 "무엇을 테스트할 것인가?"라는 질문에 대한 답을 제공합니다. 테스트 스위트와 테스트 케이스 차이 예를 들어, 다음과 같은 네 개의 테스트 케이스가 있습니다. 테스트 케이스 1: 로그인 테스트 케이스 2: 새 제품 추가 테스트 케이스 3: 체크아웃 테스트 케이스 4: 로그아웃 이 테스트 케이스에서 애플리케이션에 성공적으로 로..
study date : 2022-02-09, 2022-02-10 🐻 사내에서 진행한 TDD + 객체지향 관련 스터디를 정리한 포스팅입니다. 이번 TDD 스터디에서는 페어 프로그래밍을 다뤘다. 실제로 페어 프로그래밍이 혼자 작업할 때보다 노동 강도가 배로 들었다. 켄트 백과 워드 커닝햄이 페어 프로그래밍을 하다가 TDD에 대한 이론을 떠올렸다고 한다. 페어 프로그래밍 페어 프로그래밍은 보통 두 명이 짝 지어서 프로그래밍을 뜻한다. 드라이버와 네비게이터로 이루어진다. 드라이버 : 소스코드를 타이핑 네비게이터 : 작성되는 소스코드를 실시간으로 리뷰를 하고 큰 그림을 염두에 두고 가이드 정해진 시간을 두고 번갈아가며 역할을 수행한다. 🐻 스터디에서는 5분간 번갈아가며 진행했다. 시간을 정하는 이유는 한 명이 계..
study date : 2022-02-09 🐻 사내에서 진행한 TDD + 객체지향 관련 스터디를 정리한 포스팅입니다. TDD + 객체지향 연습하기 tdd를 비롯한 객체지향을 연습할 수 있는 많은 예제가 있다. 다음에 시간을 내서 볼링게임과 블랙잭게임을 tdd로 구현해볼 예정이다. 볼링게임같은 경우는 밥 아저씨(로버트 세슬 마틴)가 TDD 설명을 위한 예제로도 사용됐다고 알려져 있다. GitHub - msbaek/bowling-game Contribute to msbaek/bowling-game development by creating an account on GitHub. github.com 요구사항 분석하기 이번 스터디 때에는 요구사항 분석하기를 배웠다. 기획자가 다음과 같은 요구사항을 주어졌다고 가..
study date : 2022-01-27 🐻 사내에서 진행한 TDD + 객체지향 관련 스터디를 정리한 포스팅입니다. keyword 더 나은 코드를 위해 노력 ex) 객체지향 생활체조 ParameterizedTest [들어가기 전에] comfort zone을 벗어나자. 계속해서 배움을 멈추지 않고 더 나은 구조를 생각하며 의식적으로 개발을 하여야 한다. SI 개발 10년차인데 코드 좀 봐주세요 | Popit 최근 한국에 머무르는 시간이 길어지면서 Popit 저자 섭외 활동과 병행하여 개발자 멘토링을 꾸준히 하고 있습니다. SI 경력 10년 정도 되는 개발자와 만나서 이야기 한 내용을 대략적으로 정리해 www.popit.kr [요약] 프로젝트 수행을 하면서 사용하는 기술, 발생하는 문제들을 접할 때 의도적..
회사에서 진행한 TDD 스터디 리뷰를 모아놓았습니다. 스터디 전 사전 공부 2022.01.25 - [개발 방식 연구/TDD] - TDD [1] 2022.01.25 - [개발 방식 연구/TDD] - TDD [2] 2022.01.25 - [개발 방식 연구/TDD] - TDD [3] 스터디 관련 정리 2022.05.07 - [개발 방식 연구/TDD] - TDD 스터디 1주차 요약 2022.05.07 - [개발 방식 연구/TDD] - TDD 스터디 2주차 요약 2022.05.07 - [개발 방식 연구/TDD] - TDD 3주차 스터디 요약 관련 github 링크 https://github.com/kkoon9/tdd-calculator
AssertJ를 추가적으로 정리해보려고 한다. 맨 아래 AssertJ docs와 테스트 주도 개발 시작하기 책을 참고해서 작성하였다. AssertJ vs. JUnit 글에서 보완할 부분을 먼저 짚고 넘어가자. 2022.01.26 - [Computer Science/TDD] - AssertJ vs. JUnit AssertJ vs. JUnit 스터디에서 대니스가 말씀해주시길, JUnit 내에 있는 Assertions보다는 AssertJ를 많이 사용한다고 말씀해주셨다. 그래서 이번엔 이 두 개의 차이점을 정리해보려고 한다. 해당 내용은 다음 링크를 번 kkoon9.tistory.com 친절한 AssertJ AssertJ는 JUnit보다 테스트 실패 메시지가 친절하다. 먼저 JUnit 코드를 살펴보자. asse..
스터디에서 대니스가 말씀해주시길, JUnit 내에 있는 Assertions보다는 AssertJ를 많이 사용한다고 말씀해주셨다. 그래서 이번엔 이 두 개의 차이점을 정리해보려고 한다. 해당 내용은 다음 링크를 번역한 내용이다. AssertJ vs JUnit 우선, 간단하게 두 개의 차이점은 다음과 같다. JUnit : 자바에 구축된 자동화 테스트가 가능한 프레임워크 AssertJ : 자바 테스트에서 유창하고 풍부한 assertions를 작성하는데 사용되는 오픈소스 라이브러리 물론, JUnit에서도 assertions가 가능하지만, AssertJ는 작업 과정을 더 효과적으로 만들고 코드를 더 잘 읽을 수 있게 만든다. 왜 AssertJ일까? 배우기 쉽다. AssertJ Docs 정리가 잘 되어 있다. ⇒ 링..
- Total
- Today
- Yesterday
- Kotlin
- BAEKJOON
- BOJ
- 디자인패턴
- 클린 코드
- 클린 아키텍처
- 백준
- Effective Java
- 알고리즘
- Olympiad
- 디자인 패턴
- MSA
- kotest
- Spring
- 이펙티브 자바
- 테라폼
- JPA
- 코테
- Spring Boot
- Java
- 이팩티브 자바
- kkoon9
- 프로그래머스
- C++
- 객체지향
- 정규표현식
- node.js
- AWS
- programmers
- Algorithm
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |