1. 기능만들면서 하드코딩데이터넣고 돌아가는지 보기
2. 유저한텐 필요없지만 개발자가 에러추적 가능하도록 콘솔이나 서버에 로그찍도록하기
3.테스트용 툴이나 모듈을 따로개발 (어케할지 감도안잡힘)
1,2면 학부생 과제부터 상식적,본능적으로 당연히 하게되는거고
3은 대기업아닌이상 오버엔지니어링인거같은데
테스트코드나 TDD가 대단함 방법론인거처럼 말하는데 얘네가 말하는게 1,2,3중에 머임?
1. 기능만들면서 하드코딩데이터넣고 돌아가는지 보기
2. 유저한텐 필요없지만 개발자가 에러추적 가능하도록 콘솔이나 서버에 로그찍도록하기
3.테스트용 툴이나 모듈을 따로개발 (어케할지 감도안잡힘)
1,2면 학부생 과제부터 상식적,본능적으로 당연히 하게되는거고
3은 대기업아닌이상 오버엔지니어링인거같은데
테스트코드나 TDD가 대단함 방법론인거처럼 말하는데 얘네가 말하는게 1,2,3중에 머임?
1번 과정을 코드로 만들어두는거야. 사람이 수동으로 테스트하는게 아니라 - dc App
3말하는거고 윗댓처럼 1을 자동으로 하려고 짜는거 - dc App
1을 하기 위해서 3을 만드는게 테스트코드. 스프링 같은 경우 di 적극 활용해서 인터페이스 위주로 코드 짜고 운영환경에서는 실제 구현한 클래스 테스트코드에서는 인터페이스/추상클래스를 상속받은 mock 클래스 만들어서 넣으면 그게 대충 3번이 되는ㄱ
연초마다 세우는 계획처럼 당연한 건데 당연하지 않아서 말이 계속 나오는 것임
하드코딩된 데이터를 넣고 자동화 테스트 돌렸을때 에러가 터지면 뭔가 구현이 잘못되었거나 요구사항이 바뀐걸 바로 알 수 있게 한거임
3번을 활용해서 1번을 구현하면됨.