500개가 넘는 단위테스트 결과 보고서를 작성해야 하는 막막한 상황에 직면했습니다. 각 프로그램의 실행 로그를 캡처하려면 프로그램을 일일이 열고 실행 로그를 캡처하는 지루하고 반복적인 수작업을 해야 했죠. 시간도 오래 걸리고 실수할 가능성도 높아 효율성이 매우 떨어졌습니다. 그래서 생각해낸 것이 바로 파이썬을 이용한 자동화였습니다. 파이썬의 pyautogui와 Pillow 라이브러리를 활용하여 스크린샷을 자동으로 캡처하고 저장하는 프로그램을 만들 계획입니다. 이를 통해 단위테스트 결과를 효율적으로 관리하고 보고서 작성 시간을 획기적으로 단축할 수 있을 것으로 예상됩니다. 이번 글에서는 프로젝트의 시작을 알리고, 앞으로 진행될 자동화 과정에 대한 구체적인 계획을 설명하겠습니다.
먼저, pyautogui를 이용하여 특정 프로그램의 실행 로그 창을 찾아 스크린샷을 찍는 부분을 구현할 것입니다. 프로그램 창의 위치와 크기를 정확히 파악하여, 원하는 영역만을 캡처하는 코드를 작성해야 합니다. 만약 프로그램 창의 위치가 매번 달라진다면, 창 제목이나 특정 UI 요소를 이용하여 창을 식별하는 방법을 고려해야겠죠. Pillow 라이브러리는 캡처한 스크린샷 이미지를 다루는 데 사용될 예정입니다. 이미지의 크기 조정이나 품질 개선 등 후처리 작업을 통해 최종 보고서에 적합한 이미지를 생성할 수 있습니다. 스크린샷 저장 후에는, 미리 준비해 놓은 단위테스트 템플릿 엑셀 파일을 활용하여 자동화된 보고서 생성을 진행합니다. Openpyxl과 같은 라이브러리를 이용하여 엑셀 파일을 조작하고, 각 테스트 결과에 해당하는 스크린샷을 자동으로 삽입할 계획입니다. 단위테스트의 결과(성공/실패 여부 등)는 프로그램 실행 후 자동으로 추출하여 엑셀 파일에 기록될 예정이며, 이를 스크린샷과 연동하여 최종 보고서를 완성합니다.
이 프로젝트를 통해 단순 반복 작업에서 해방되어 더욱 중요한 업무에 집중할 수 있게 될 것입니다. 500개가 넘는 단위테스트 결과 보고서 작성이라는 엄청난 과제를 효율적으로 해결함으로써, 시간과 노력을 절약하고, 더 정확한 결과를 얻을 수 있을 것으로 기대하고 있습니다. 앞으로 진행될 스크린샷 자동화 및 엑셀 자동화 과정에 대한 자세한 내용은 다음 글에서 공유하도록 하겠습니다. 많은 기대 부탁드립니다!