automated-testing

2 개의 포스트

전통적인 평가의 죽음: 주체적 개발이 50년 된 분야를 무너뜨렸고, JiT테스팅이 그것을 부활시킬 수 있다 (새 탭에서 열림)

저스트인타임 테스트(JiTTests)는 AI 에이전트 기반의 급격한 개발 속도에 대응하기 위해 등장한 새로운 테스트 패러다임으로, 코드 변경 시점에 LLM이 실시간으로 맞춤형 테스트를 생성하여 버그를 탐지합니다. 이 방식은 기존 정적 테스트 스위트가 가진 막대한 유지보수 비용과 가짜 양성(False Positive) 문제를 해결하며, 엔지니어가 테스트 코드 관리가 아닌 실제 결함 수정에만 집중할 수 있는 환경을 제공합니다. 결국 JiTTests는 소프트웨어 테스트의 초점을 일반적인 코드 품질 관리에서 특정 변경 사항의 실제 결함 탐지로 전환하는 혁신적인 접근법입니다. **전통적인 테스트 방식의 한계** * **수동 작성 및 유지보수:** 개발자가 직접 테스트를 설계하고 코드를 작성해야 하며, 코드 베이스가 변할 때마다 기존 테스트를 업데이트해야 하는 부담이 큽니다. * **불확실한 미래 예측:** 현재의 테스트가 미래의 모든 변경 사항을 완벽히 커버하기 어렵기 때문에, 실제 버그를 놓치거나 의도된 변경에도 테스트가 깨지는 가짜 양성 문제가 빈번합니다. * **개발 속도 저하:** AI를 활용한 에이전트 기반 개발로 코드 생산 속도는 빨라졌지만, 전통적인 테스트 방식은 이 속도를 따라잡지 못해 병목 현상을 일으킵니다. **JiTTests의 작동 메커니즘** * **의도 파악:** 풀 리퀘스트(PR)가 제출되는 순간, LLM이 제출된 코드의 변경 의도를 자동으로 분석합니다. * **뮤턴트(Mutants) 생성:** 발생 가능한 오류를 시뮬레이션하기 위해 의도적으로 결함을 삽입한 코드 버전을 만들어 테스트의 유효성을 검증합니다. * **맞춤형 테스트 실행:** 해당 코드 변경에 특화된 테스트를 즉석에서 생성하고 실행하여 예상치 못한 동작 변화를 포착합니다. * **정교한 결과 평가:** 규칙 기반 시스템과 LLM 기반 평가기의 앙상블을 통해 가짜 양성을 걸러내고, 엔지니어에게는 실제 버그에 대한 명확하고 액션 가능한 리포트만 전달합니다. **JiTTests 도입의 이점** * **유지보수 비용 제로:** 테스트가 코드베이스에 영구적으로 남지 않고 일회성으로 생성 및 폐기되므로 지속적인 관리 노력이 필요 없습니다. * **테스트 신뢰도 향상:** 변경된 코드의 맥락을 이해하고 생성되므로, 단순한 코드 수정으로 인해 기존 테스트가 깨지는 현상이 현저히 줄어듭니다. * **엔지니어링 리소스 최적화:** 테스트 코드를 작성하거나 리뷰할 필요가 없으며, 시스템이 실제 버그를 찾아냈을 때만 엔지니어가 개입하면 됩니다. AI 기반 개발이 가속화되는 환경에서 JiTTests는 단순한 도구를 넘어 필수적인 인프라로 자리 잡을 것입니다. 조직은 복잡한 테스트 스위트를 유지하는 데 드는 비용을 줄이고, 실제 결함 탐지율을 높이기 위해 LLM을 활용한 동적 테스트 생성 파이프라인 도입을 적극적으로 검토해야 합니다. 이를 통해 개발자는 코드의 본질적인 로직 구현과 창의적인 문제 해결에 더 많은 시간을 할당할 수 있습니다.

마이크로소프트에서 접근성을 (새 탭에서 열림)

마이크로소프트는 '세계 접근성 인식의 날(GAAD)'을 맞아 모든 개발자가 장애 여부와 상관없이 누구나 기술을 누릴 수 있도록 돕는 접근성 도구와 방법론을 제안합니다. 개발자는 복잡한 전문 지식 없이도 'Accessibility Insights'와 'Visual Studio'의 통합 도구를 활용해 개발 수명 주기 내에서 접근성 테스트를 손쉽게 수행할 수 있습니다. 궁극적으로 이러한 도구들은 단순히 규정을 준수하는 것을 넘어, 모든 사용자에게 공평하고 만족스러운 디지털 경험을 제공하는 것을 목표로 합니다. **FastPass를 통한 신속한 고부하 이슈 탐지** * Accessibility Insights for Web의 'FastPass' 기능을 활용하면 5분 이내에 사용자 경험에 큰 영향을 미치는 핵심 접근성 문제를 식별할 수 있습니다. * 오픈소스 엔진인 axe-core를 기반으로 한 자동화 체크를 통해 UI 코드를 작성하는 과정에서 즉각적인 피드백을 제공합니다. * 탭 정지(Tab Stops)와 같은 키보드 내비게이션 테스트를 포함하여, 스크린 리더나 확대 도구 사용자에게 혼란을 줄 수 있는 잘못된 포커스 순서를 바로잡도록 돕습니다. **Visual Studio 통합 접근성 검사기 활용** * Visual Studio 2022(버전 17.5 이상)에 내장된 접근성 검사기를 통해 별도의 도구 이동 없이 IDE 내에서 직접 문제를 발견하고 수정할 수 있습니다. * Accessibility Insights for Windows와 동일한 'Axe-Windows' 엔진을 사용하여 데스크톱 애플리케이션의 일반적인 접근성 오류를 정밀하게 감지합니다. * 개발 흐름을 유지하면서 동시에 접근성 스캐닝을 병행할 수 있어 개발 생산성과 포용성을 동시에 확보할 수 있습니다. **Quick Assess를 통한 정밀한 보조 테스트** * 자동화 도구로 감지하기 어려운 심층적인 이슈를 해결하기 위해 30분 이내로 수행 가능한 10가지 보조 테스트(Assisted tests)를 제공합니다. * 최근 업데이트를 통해 최신 웹 접근성 표준인 WCAG 2.2 기준에 대한 테스트 지원 및 안내 가이드를 도입했습니다. * 헤딩 레벨(Heading Levels) 검사 등 각 테스트 항목마다 해당 이슈가 왜 중요한지(Why It Matters)에 대한 설명과 함께 구체적인 수정 사례 및 리소스를 연결해 줍니다. 접근성 개선은 단순히 체크리스트의 항목을 지우는 작업이 아니라, 기술을 통해 모든 사람에게 평등한 기회를 제공하는 혁신의 과정입니다. 지금 바로 Accessibility Insights와 Visual Studio의 최신 기능을 개발 프로세스에 도입하여, 작은 단계부터 사용자 경험의 질을 높여보시길 권장합니다.