tdd
-
TDD 요약 정리 - 테스트 주도 개발/테스팅 패턴, 빨간/초록 막대JAVA 2022. 7. 4. 08:53
25장. 테스트 주도 개발 패턴 테스트한다는 것은 무엇을 뜻하는가? 테스트를 언제 해야 하는가? 테스트할 로직을 어떻게 고를 것인가? 테스트할 데이터를 어떻게 고를 것인가? 테스트(명사) 테스트 - 자동화된 테스트 격리된 테스트 테스트를 격리하기 위한 작업 - 응집도가 높고 결합도는 낮은 객체의 모음 테스트 목록 구현해야 할 모든 목록 모든 오퍼레이션의 사용 예 해당 오퍼레이션의 널 버전 리팩토링 목록 테스트 우선 테스트를 먼저 하면 스트레스가 줄고 테스트를 더 많이 하게 된다 단언 우선 완료된 시스템이 어떨거라는 거부터 기능이 완료되면 통과할 수 있는 테스트 부터 완료될 때 통과해야 할 단언부터 테스트 데이터 테스트를 읽을 때 쉽고 따라가기 좋을 만한 데이터 사용 명백한 데이터 테스트 자체에 예상되는 ..
-
TDD - 2부 xUnit 간단 정리JAVA 2022. 6. 27. 01:38
2부 xUnit 예시 간단 정리 xUnit 페이지를 공부하면서 이 정도는 알아둬야 겠다 하는 내용에 대해 간단히 정리 TDD를 마스터하면 훨씬 큰 기능 단위로 작업할 수 있게 되지만 TDD를 마스터 하기 위해서는 필요할 때 작은 단계로 작업하는 법을 배워야 한다. AAA 패턴 준비(arrange) - 객체 생성 행동(act) - 어떤 자극을 준다 확인(assert) - 결과 검사 이전에 공부했을 때는 주로 .net 진영에서 많이 쓰는 패턴으로 보였다. Java 진영에서는 Given/When/Then 패턴을 많이 쓰는 것으로 보인다. 테스트를 위해 필요한 객체 생성 제약 성능 여러테스트에서 같은 객체 사용한다면 객체 하나만 생성 격리 다른 테스트에 영향을 주지 않기 위해 테스트 마다 각 객체 생성 테스트 ..
-
TDD 17장. Money 회고 요약 및 정리JAVA 2022. 6. 27. 01:21
17장. Money 회고 요약 및 정리 메타포 어떤 메타포를 선택하느냐 → 완전 다른 방식의 설계 내가 지금까지 작성한 모든 프로그램을 20번씩 다시 작성해 본다면 어떨까?매번 새로운 통찰을 얻고 놀라움을 경험할 것인가? 더 신중을 기해서 모든 통찰을 세 번 안에 다 얻어낼 방법이 있을까? 아니면 한번에? 왜 자신이 짠 코드를 다시 짜면 더 잘 짤 수 있다고 이야기 하는지 더 와 닿는 부분이다. JUnit 사용도 실행 버튼을 정확히 125번 눌렀다. … 보통 일분에 한 번 정도 테스트를 실행했다. TestCode가 없었다면 과연 몇번이나 테스트를 할 수 있었을까? TestCode만 있다면 테스트를 수행하는 건 너무나도 간단하기 때문에 수 없이 많은 테스트를 할 수 있게 한다. TestCode는 개발자의 ..
-
수년 전 공부했던 TDD의 기억Etc 2021. 7. 14. 23:29
수년전에 공부했었던 TDD.. 다시 어딘가 찾아보지 않고 머릿속에 있는 기억만을 한번 꺼내보려 합니다. 머릿속에 있는 기억을 꺼내서 확실한 부분인지 검증하거나 수정하지 않고 그대로 한번 적어보겠습니다. 많은 오류가 있을 수 있으니 재미삼아 봐주시면 감사하겠습니다. 그리고 다음 게시글에서는 확실한 내용만을 정리해서 올려보겠습니다. Given When Then 템플릿이 먼저 생각 나네요. Given - 상황이 주어졌을 때 When - 어떤 무언가의 행동을 한다. Then - 그랬을 때의 예상 결과는 이렇다. Given 에는 input과 output의 기대값을 적었었고 When 은 실제 Feature 코드를 호출했고 결과 까지 받았습니다. Then에서는 When 에서 발생된 결과를 Matcher를 사용해서 검..