단위테스트 junit 예제들보고 있는데 통합테스트는 실제로 있는 클래스 객체들 가지고 쓰는거 이해되는데 단위테스트보면
a 를 가정하고 a나오면 테스트 통과 << 이런식 코드가 많던데 이게 뭔 쓸모가 있는지싶음
당연히 a 가정하고 equal a 나오니까 통과지 Mock으로 깡통 인스턴스 만든건데 당연한거아닌가? 이거왜하지?
라는 생각밖에 안드는데 이거 책으로 봐야되나? 강의도 없는거같은데
단위테스트 junit 예제들보고 있는데 통합테스트는 실제로 있는 클래스 객체들 가지고 쓰는거 이해되는데 단위테스트보면
a 를 가정하고 a나오면 테스트 통과 << 이런식 코드가 많던데 이게 뭔 쓸모가 있는지싶음
당연히 a 가정하고 equal a 나오니까 통과지 Mock으로 깡통 인스턴스 만든건데 당연한거아닌가? 이거왜하지?
라는 생각밖에 안드는데 이거 책으로 봐야되나? 강의도 없는거같은데
그 가정이 된다는게 유의미해서? 인강고고 - dc App
인프런엔 테스트코드만 다루는 강의 없던데 해외뒤져봐야되나
mock을 쓰는 이유가 mock이 아닌 다른 코드가 잘 돌아가는지 확인하기 위해서인데 mock_func = Mock() mock_func.result = a assert mock_func.result = a 이딴 식이면 의미 없음
그거 그냥 문법 어떻게 쓰는지 보여주려고 하는 첫번째 강의아니냐?
단위 테스트에서는 외부 시스템(예: 데이터베이스, 네트워크, 파일 시스템 등)과의 연동을 실제로 수행하는 것이 아니라, 이를 Mock으로 대체합니다. 이렇게 함으로써 테스트하려는 코드의 로직에 집중할 수 있고, 외부 시스템의 불안정성이나 테스트 속도 저하를 피할 수 있습니다. 왜 Mock을 사용하는지 다시 정리해보면: 의존성 격리: 외부 시스템에 의존하지 않고, 테스트하려는 코드 자체에 집중할 수 있습니다. 테스트 속도 향상: 실제 데이터베이스나 네트워크 요청은 시간이 오래 걸릴 수 있지만, Mock 객체를 사용하면 이러한 부분을 빠르게 대체할 수 있습니다. 일관성 유지: 외부 시스템의 상태나 응답이 변동할 수 있는 상황에서도, Mock을 사용하면 항상 예측 가능한 결과를 얻을 수 있습니다. 지피티답임
강의는 안보고 몇군데 검색해서 돌아다니면서 본건데 mock이 아닌 자체 테스트하려는 단위 테스트 유의미한 예제를 아직 못본거같음
아니면 일단 저렇게 만들어두고 코드는 나중에 구현하려는 거일수도있어 TDD가 먼저 테스트 코드를 비즈니스 로직에 맞춰서 먼저 만들고 에러낸다음에 해당 코드를 구현하는거니까
애초에 테스트 코드를 왜 작성해는지를 생각해보면 어떻게 해야 하는지 앎 만약 어떤 프로젝트에 기능이 수십가지가 넘는데 여러사람이 개발해(경우에 따라 미래의 자신) 그 때 원래 정상적으로 동작하던 기능을 다른 사람이 수정해서 기능을 망가트리지 않고 해당 부분을 정상적으로 수정하도록 할 방법은? 애초에 해당 기능에 대한 테스트 할 수 있는 방법이 존재해야 하고 다른 사람이 해당 기능을 수정하고선 테스트를 수행해서 테스트 시 오류가 발생되는지 점검해야 - dc App
그러니 보통 기능이 라는게 입력이 있으면 그 입력값으로 뭔가 처리해서 출력 있으니 특정한 입력을 주고 출력이 내가 의도한 결과대로 나왔는지 검증하는 형태로 하는거 - dc App
이 때 진짜 순수하게 해당 기능만 테스트 할 수 있어야 정확한 테스트가 가능하니 다른 기능과 엮이는 부분은 전부 인터페이스 등 느슨한 연결로 해서 모듈화를 하는 거고 실제 테스트 시에는 그 부분을 Mock으로 대체해서 내가 원하는 입력을 정확하게 제공하도록 하는거 - dc App
실제 단위테스트 시에는 커버리지 테스트라고 해서 단위테스트가 실제 기능에 어느부분까지 테스트 했는지를 검토하고선 테스트에서 빠진 부분은 테스트를 보강하고, 커버리지 테스트에서 잡지 못해서 실제 버그로 이어진거는 버그 분석 후 수정하면서 관련된 테스트를 보강해가면서 점점 테스트를 강화해 가는게 핵심임 - dc App
개념 자체는 이해됨.. 내가 생각하기엔 service를 예로들면 복잡하고 어려운 비즈니스에서 이 메서드가 잘 될까? 하고 input ouput잘 돌아가는지 테스트하는 머리속으로 상상은 되는데.. 다른사람이 프로젝트에 쓴거 보면 그냥 별것도 아닌거에도 많이쓰더라고