아우~ 오늘 대충 만든 테스트에 속아서 테스트 케이스만 실컷 수정하다가, 심각한 버그를 발견했습니다. ㅡ_ㅡa… 제가 지금하고 있는 일은 기존 코드에 새로운 기능을 추가하는 것인데… 기존 코드가 잘 돈다는 보장이 없어서 상당히 난감할 때가 있습니다. 사람의 심리가 그렇듯이 자기보다는 남을 더 의심하는 법이지요. 재미있는 것은 기존 사원들 역시 자신들이 만든 코드는 의심하지 않고 제 소스를 먼저 의심한다는 겁니다.

오늘도 이것 때문에 문제가 살짝 있었습니다. 저희가 수정한 프로젝트로 테스트를 진행하던 기존 사원이 프로그램이 잘 안 돈다고 뭐라고 한 것이지요. 뭐라고 한 것에 대해서는 저도 경험이 많으니(??) 이해합니다만, 자신의 코드에 일말의 의심도 안하는 것에 충격을 먹었습니다.  ^^;;;

사실 수정한 코드에 문제가 발생했을 때, 코드의 어디가 문제인가를 가장 쉽게 알아보는 방법은 동일한 케이스로 기존 코드를 테스트하는 것입니다. 만약 기존의 코드가 잘 돈다면 제가 수정한 부분에 문제가 있는 것이고, 그렇지 않다면 기존 코드 자체에 있던 버그가 밖으로 나왔다고 볼 수 있습니다. 이러한 간단한 테스트로 디버깅해야 하는 범위와 시간을 줄일 수 있는 것이지요. 하. 지. 만 그냥 테스트 프로그램이 안 돈다고 말하면서, 기존 코드를 테스트 해보자는 제 말을 살며시 일축하더군요. ^^;;;;

테스트 케이스를 처음 봤을 때, 인덱스가 잘 못 들어가는 오류가 있어서 그 부분만 수정했습니다. 하지만 이게 시작이었습니다. @ㅠ@ 인덱스를 수정했는데, 이번에는 다른 포인트에서 계속 죽는 겁니다. ㅠㅠ 혹시나 하는 마음에 원래 프로그램을 돌려봤는데, 역시나 동일한 문제가 있었습니다. ㅡ_ㅡa… 결국 기존 사원이 와서 수정하는 걸로 마무리…!!!

쩝쩝… 허접하게 작성된 테스트 케이스 덕에 심각한 버그를 찾아낼 수 있었네요. 어휴… 이 버그를 모르고 그냥 릴리즈했다가 들어 먹었을 욕을 생각하면 등골이 오싹합니다. 릴리즈하고 난 뒤는 모두 제가 덮어쓰는 거라… 더 오싹하더군요. 앞으로는 기존 소스 및 수정한 소스 모두 테스트 해봐야겠습니다.

역시 테스트는 좋은 것입니다~!!!  테스트 만세~!!!!

+ Recent posts