명령 성공과 동작 검증
컨트롤러를 시험할 때는 리소스 생성 명령이 성공했는지만 확인해서는 부족하다. 이후 컨트롤러가 기대한 변화를 만들었는지도 살펴야 한다. Chainsaw는 여러 단계를 순서대로 수행하고 각종 조건을 검증해 이러한 동작을 시험하도록 한다.
리소스와 기대 조건
처음에는 Kyverno의 종단 간 시험을 위해 개발됐지만 다른 Kubernetes 객체도 선언형으로 시험할 수 있다. 정책이나 리소스를 준비하고 그 결과 상태를 확인하는 흐름을 구성한다. 시험에서 수행할 변경과 확인할 조건을 함께 표현하는 것이 핵심이다.
반복 가능한 검토 흐름
명령줄 도구를 빌드 스크립트에서 실행하거나 로컬에서 사용할 수 있다. 다만 도구가 제공하는 검증 구조만으로 모든 동작이 자동 확인되는 것은 아니다. 시험 대상과 기대 조건, 작업 후 정리 범위를 명확히 정하고 실제 애플리케이션의 응답 검증이 필요한지도 구분해야 한다.