완벽한 테스팅의 불가능성 완벽한 테스팅이 불가능하다고 이야기하는 게 조금 이상하다고 느낄 수 있다. 테스팅에는 분명히 이론적인 한계가 있다. 오히려 이 한계가 무엇인지 정확히 이해할 때만 올바른 테스팅 기법을 적재적소에 사용할 수 있다. Undecidable Problem 본질적으로 테스팅이 묻는 질문, 즉 ‘내가 작성한 소프트웨어가 올바르게 작동하는가?’라는 질문 자체가 답하기 어려운 한계를 가지고 있다. 이 질문에 대해서 정말 완벽한 답을 하려면 상당히 깊은 이론적인 논의를 해야 된다. 컴퓨터 알고리즘 그리고 무엇이 계산 가능한지에 대한 이론을 깊게 공부하시면 어떤 종류의 계산 문제는 알고리즘이 답을 하는 것 자체가 불가능한 문제들이 있다. undecidable한 문제라고 하고 아니면 결정 불가능한 ..