테스트코드
-
C++에 google test를 테스트 프로젝트에 적용해보기개발/C, C++ 2022. 8. 11. 12:03
테스트 구조는 알았고, 사내에 테스트를 적용을 마쳤다. 이해한 내용을 정리해서 테스트 프로젝트를 하나 작성하고, 이 아이를 "단위 테스트가 없던 프로젝트" 에서 "단위 테스트가 포함된 프로젝트" 로 바꾸는 과정을 살펴보자 CentOS 7 google-test 단위 테스트가 없는 상태의 프로젝트와 단위 테스트를 포함한 프로젝트를 각각 첨부한다. 코드는 직접 내려받아서 make 하고 make test 를 통해 테스트 바이너리까지 빌드할 수 있도록 만들어두었다 github에서 확인하기 https://github.com/BearMett/UnitTestTester GitHub - BearMett/UnitTestTester: 프로젝트의 테스트 코드 적용기 프로젝트의 테스트 코드 적용기. Contribute to B..
-
google test 로 C++ 단위 테스트 진행기개발/C, C++ 2022. 5. 8. 15:26
테스트 코드를 도입해야겠다고 생각하고, 순전히 하루정도 정말 테스트 코드에 대한 고민을 할 기회가 생겼다. 리눅스 환경에서 C++ 의 테스트 코드를 작성할 때, 어떤 개념으로 이 테스트 코드가 동작하는지 내가 이해한 바를 적어두려고 한다. 환경은 CentOS 7에 c++ 11 테스트는 google test 를 사용하기로 했다. 테스트 프로젝트로 단위 테스트가 없는 프로젝트에 단위 테스트를 넣는 과정은 이 글을 참고하면 된다. 예제 프로젝트에 테스트 코드를 추가하는 과정과 동작을 직접 확인할 수 있다. https://bearnet.tistory.com/22 myclass.o dbconn.cpp -(컴파일)--> dbconn.o main.cpp -(컴파일)--> main.o myclass.o dbconn.o..
-
테스트 코드의 필요성을 깨닫다개발/생각 2022. 5. 6. 16:53
개발자가 되어 일을 하다가 나름의 경험이 생기고 나서 생긴 일이다. 프로그램의 동작은 내가 생각한게 맞고, 내가 가정한 상황이 전부고, 내가 테스트한 환경이 전부라고 생각하는 오만방자한 순간이 오고, 그 어마무시한 자신감을 코드에 싣게되었다. 어느 순간 깨달았을까, 내가 코드를 작성하면 절대적으로 버그를 생산하고, 의도한 기능에 맞지도 않을때가 많다는것을 깨닫고 코드를 작성하는것이 공포스러운 순간이 왔다. 이를 극복하기 위해 코드를 조심히(?) 작성한다는 정말 말도안되는 생각을 했지만 그 공포감에 휩싸인 사람이 코드를 조심히 작성해도 버그는 멈추지 못하는것은 당연했고, 더 깊은 공포에 사로잡히는 계기가 되었을 뿐이다. 스스로의 오만방자했음을 깨닫고 공포감의 우물을 박차고 나가는데는 여러 글이 도움이 되었..