오랜만에 글. 우연히 9XD 네임드(?) 진유림씨의 인터뷰 영상을 보고, '내가 내 옆 사람보다 더 잘할 수 있는 일은 무엇일까' 생각하게 되었다. 어찌어찌 서버 개발자가 되었고, 나름 매력적인 커리어인 것 같고 적성에도 맞아서 만족은 한다. 그러나 내가 내 옆 사람보다 더 잘 할 수 있는 일인지는 의문이다. (물론 중간은 하겠지만, 그리고 일이라는 것은 다양한 역량과 태도, 심지어는 개인의 성격이나 가치관의 영향을 받는 것이기에 단방향으로 평가될 수 없는 것이지만-) 어렸을 적부터 다른 친구들 게임할 시간에 포토샵으로 다음 카페 메인 화면 등 컴퓨터에서 활용되는 디자인 리소스를 만들기 좋아했다. 컴퓨터 공학이라는 전공에 처음 발을 들여놓는 계기가 되기도 했고. (당시에는 '컴퓨터 그래픽스'가 그런 것을..
스프링 테스트 작성 가이드라인(p424) 항상 단위 테스트를 먼저 고려한다. 하나의 클래스 또는 성격이 같은 긴밀한 클래스 몇 개를 모아서 외부와의 의존관계를 모두 차단, 필요에 따라 목 오브젝트 등을 활용하여 '고립된 테스트'를 만든다. 외부 리소스를 사용해야만 가능한 테스트는 통합 테스트로 만든다. DAO는 DB까지 연동하는 테스트로 만들고 DB에 테스트 데이터를 준비한다. DAO가 충분히 테스트 되었다면 DAO를 이용하는 코드는 DAO의 역할을 스텁이나 목 오브젝트로 대체하여 테스트한다. 단위 테스트를 만들기 너무 복잡하다고 판단되는 코드는 처음부터 통합 테스트를 고려해본다. 스프링 테스트 컨텍스트 프레임워크를 이용해 통합 테스트를 작성할 수 있다. 엔터프라이즈급 스프링 서버 개발을 하다보니 단위 ..
테스트 대역(Test double) 테스트 대상이 되는 오브젝트의 기능에만 충실하게 수행하면서 빠르게, 자주 테스트를 실행할 수 있도록 사용하는 오브젝트 ex) Test DB를 보는 DataSource, DummyMailSender 테스트 스텁(Test stub) 테스트 동안 코드가 정상적으로 수행할 수 있도록 돕는 테스트 대상 오브젝트의 의존객체 목 오브젝트(Mock object) 테스트 오브젝트와 자신 사이에서 일어나는 커뮤니케이션 내용을 저장해뒀다가 테스트 결과를 검증하는 데 활용할 수 있도록 하는 오브젝트
- Total
- Today
- Yesterday