일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- double dispatch
- NullPointerException
- visitor proxy pattern
- static dispatch
- 토비의 봄
- line messaging api
- EntityToDto
- annotation
- 챗봇
- Controller
- Optional
- Dynamic dispatch
- mapping
- spring
- DtoToEntity
- reflection
- webhook
- enum
- Modelmapper
- Visitor pattern
- ngrok
- getOrCreate
- linebot
- java
- springboot
- Today
- Total
목록테스트 (5)
database by narae :p
테스트 주도 개발로 배우는 객체 지향 설계와 실천 5장. 테스트 주도 개발 주기의 유지 5.1. 각 기능을 인수 테스트로 시작하라 실패하는 인수 테스트를 작성하는 것으로 신기능을 작업하는데 착수한다. 인수테스트는 우리가 작성하려는 기능을 아직 시스템에서 갖추지 못했다는 사실을 보여주고 그 기능이 완성되기까지 진행 상황을 반영한다. 인수 테스트 : 응용 도메인에서 나온 용어만 이용한다. (기반 기술. db 등 용어가 아닌) => 자동으로 확인 가능한 형태로 요구 사항을 정확하게 표현하면 분명하게 드러나지 않는 가정을 밝히는데 도움이 된다. => 실패하는 테스트 덕에 요구사항을 충족하는 데 필요한 만큼의 기능만 구현하는 데 집중할 수 있어 기능을 완성할 가능성이 높아진다. => 사용자 관점에서 시스템을 바라..
테스트 주도 개발로 배우는 객체 지향 설계와 실천 4장. 테스트 주도 주기 시작 테스트는 인수테스트의 일환으로 전 구간을 대상으로 실행되어 시스템의 외부 인터페이스에 관해 필요한 피드백을 줘야하는데, 이는 자동화된 빌드/배포/테스트 주기 전체를 구현해야 함을 의미한다. 4.1. 우선 동작하는 골격을 대상으로 테스트하라 ‘동작하는 골격’을 대상으로 빌드, 배포, 테스트하는 방법을 파악한 다음, 그 기반 구조를 이용해 유의미한 첫 기능에 대한 인수 테스트를 작성한다. 그 후에는 시스템의 나머지 부분을 대상으로 테스트 주도 개발을 진행할 수 있게 모든 것이 제자리에 놓일 것이다. 동작하는 골격 : 전 구간을 대상으로 자동 빌드, 배포, 테스트를 할 수 있는 실제 기능을 가장 얇게 구현한 조각을 말한다. 테스트..
테스트 주도 개발로 배우는 객체 지향 설계와 실천 3장. 도구 소개 3.2. JUnit4 리플렉션을 통해 클래스 구조를 파악한 후 해당 클래스 내에서 테스트를 나타내는 것을 모두 실행 테스트 케이스 : @Test Junit4에서는 테스트를 실행할 때 테스트 클래스의 새 인스턴스를 생성한 후 적절한 테스트 메서드를 호출한다. 매번 새 테스트 객체를 생성하기 때문에 각 테스트 간의 격리성을 확보할 수 있다. 단정 테스트 대상 객체를 호출하고 그 결과를 단정(aseertion) - assertTrue() - aseertNull() - aseertEquals() 예외 예상 @Test(expected=….Exception.class) 테스트 픽스처 : 테스트가 시작할 때 존재하는 고정된 상태 - 테스트가 반복 가..
테스트 주도 개발로 배우는 객체 지향 설계와 실천 2장. 객체를 활용한 테스트 주도 개발 2.1. 객체망 객체지향설계 : 객체 간의 의사소통에 집중. 협업하는 객체의 망 2.2 값과 객체 값 : 변하지 않는 양이나 크기 객체 : 시간이 지남에 따라 상태가 변할지도 모르지만 식별자가 있는 계산 절차 2.3. 메시지를 따르라 다른 객체와 쉽게 관계를 맺을 수 있게 객체를 설계하면, 고수준의 선언적 접근법이 주는 혜택을 누릴 수 있다. 객체가 일반적인 의사소통 패턴을 따르고 객체 간의 의존성이 명시적임을 의미한다. 의사소통 패턴 : 객체들이 다른 객체와 상호작용하는 방법을 관장하는 각종 규칙으로 구성 객체 역할 : 관련된 책임의 집합 책임 : 어떤 과업을 수행하거나 정보를 알아야할 의무 협력 : 객체나 역할의..
테스트 주도 개발로 배우는 객체 지향 설계와 실천 1장. 테스트 주도 개발의 핵심은 무엇인가? 1.1 학습 과정으로서의 소프트웨어 개발 소프트웨어 프로젝트 : 사람 + 응용 분야 + 기술 등 미처 예상하지 못한 요소가 많음 개발자들은 구성 요소의 동작 방식을 배우면서 프로젝트를 마무리한다. : 불확실한 변화를 예측하려면 경험이 늘어남에 따라 불확실성을 해결하는데 도움이 될 프로세스가 필요하다. 1.2. 피드백은 가장 기본적인 도구다 경험에 의거한 피드백을 이용해 시스템과 그 용도에 관해 배운 후, 그 배운바를 시스템에 적용 배포 : 내린 가정을 검사할 기회 => 실제 진행 상황을 측정하고, 오류를 탐지하고 수정하고, 배운 바에 따라 현재 계획을 조정한다. 점진적이고 반복적인 개발 : 중첩된 피드백 고리의..