rein's world

CI에 ActionScript Unit test 포함하기

Google Testing Blog에도 자주 글을 쓰고 있는, 구글 안에서 자동화된 테스팅 쪽에서 일하는 Miško Hevery의 글: CI 빌드에서 어떻게 Flex Unittest를 하는가

내용은 간단하다. Adobe AIR 라는 플래쉬 플레이어가 있다. 이걸 써서 CI(continuous integration) 툴 쪽에서 빌드할 때, 

  • Flash(actionscript) 혹은 flex 응용(이 경우엔 UnitTest)을 만들어내고(adobe air용으로)
  • 이 UnitTest를 실행하고 실패한 테스트 갯수를 세서 CI 툴에 반환하고(프로그램 종료 코드로),
  • 덤으로 XML 파일로 테스트 리포트도 보내버리기

라는 것. 사실 첫번째는 별거 아니고(CI 쪽 툴 좀 만져봤으면 뻔하고+ 자동화된 빌드야 뭐…), 두번째랑 세번째는 Adobe Flash Player의 기본적인 특성, 즉 안전한 샌드박스 위에서 동작하기 때문에 손댈 수 있는게 거의 없다는 점을 피할 수 있어서 가능한 것. Adobe AIR는 샌드박스 위에서 도는게 아니기 때문에, 파일도 쓸 수 있고(=즉 XML 출력도 되고)해서 문제를 피해간다는 것.

저 글을 읽고나니, 이젠 나랑 (아마도) 관련없는 프로젝트지만 예전에 ASUnit 이란 ActionScript 용 유닛 테스트 쓰던 기억이 나서 끄적끄적.

  • 생각없이 또 읽다보니, Adobe AIR엔 WebKit – Apple의 Safari, 구글의  Chrome 웹브라우져에서 사용되는 렌더링 엔진 – 이 포함되어 있어서 JavaScript 쪽의 UnitTest도 CI에 합칠 수 있다고 한다. 이건 내 쪽에선 관심이 적은 동네지만 누군가는 관심을 가질듯도 :P