티스토리 뷰

QA

[번역] 테스팅 업계에서의 34년

검은왕자 2022. 6. 29. 21:44

제임스 바크 James Bach 의 "34 Years in Testing"을 번역했습니다.
오랫동안 몸담아온 소프트웨어 테스팅 업계에 대해 그만이 가진 색깔로 진지하고 깊이 있는 질문을 던지는, 결코 가볍지만은 않은 글이었습니다. 이 글에서도 말하듯이, 모든 문제를 한 번에 풀어줄 정답은 없습니다. 이런 구루들이 제시하는 의견에 귀 기울이고 또 거기에 나만의 고민을 더해 테스팅의 세계를 조금이라도 더 나은 것으로 만든다면, 그것만으로도 충분히 의미가 있을 것 같습니다.  

번역과 포스팅에 대해 저자의 승인을 받았습니다. 
Happy Testing!  


지난 주 금요일, 즉 2021년 5월 21일은 내가 애플 컴퓨터의 테스터로 일을 시작한 지 정확하게 34년 되는 날이었다. 그 전에는 개발자로 일했었지만, 그날 이후로 나는 쭉 테스터였다. 이제 지나온 날들을 한 번 되돌아보자.

 

업계는 그 동안 끊임없이 변해왔다. 이를 부정할 수는 없다. 하지만 내가 보기엔 우리 업계에서 여전히 변하지 않은 부분도 존재한다. 소프트웨어 업계에 종사하는 대부분의 사람들은 스스로 테스팅을 제대로 이해하고 있다고 생각한다. 하지만 아무도 이 분야를 제대로 공부하려고 노력하지 않는다. 1980년대에는 많은 사람들을 ‘테스터’라고 불렀고, 막대한 비용이 테스팅에 소모되었지만 상대적으로 테스팅은 중요한 것으로 인식되지 못했다. 오늘날에도 대부분의 경우 테스팅은 중요한 것으로 받아들여지지 못한다. “품질과 테스팅은 모두가 함께 수행해야 하는 일이다!”라고 누구나 말하지만, 이는 그저 일종의 유행에 불과하다(그리고 테스팅을 수행하기 위해 무슨 면허가 필요한 것처럼 생각하는데, 이는 아주 피상적이고 아마추어적인 발상이다).

 

내가 이 직업을 시작했을 때만 해도 테스트 프로시저를 작성하고 자동화하는 것처럼, 테스팅을 정형화하는 것이 일반적이었다. 이 당시 테스트 전문가라고 부르는 사람들은 주로 테스트 프로시저를 만들어내고 자동화된 테스트를 운영했다. 또한 회사마다 테스트 팀과 테스트 매니저가 있었다. 테스터 직군을 제외한 모든 직군의 사람들이 가능한 빠르게 제품이 출시되길 바랬기 때문에, 테스터들은 항상 압박에 시달려야 했다.

 

나와 동료들은 정형화된 테스팅이 옳고, 비정형화된 테스팅은 옳지 않다는 이론에 저항하는 반란군이었다. 우리는 테스팅이 학습하고 사고하며, 질문을 던지는 사람에 관한 것이며, 프로시저나 공장의 조립 라인에 관한 것이 아니라고 주장했다. 우리는 테스팅 장인정신을 주창했다. 그리고 스스로 이 길을 걷는 사람들을 존경해 마지않았다.

 

적어도 겉으로는 휴머니스트인 것처럼 보이는 애자일은 처음에는 우리가 주장하는 개념에 우호적인 것처럼 보였다. 하지만 애자일은 금세 또 다른 압제자가 되고 말았다. 테스터들만 애자일을 만드는 것도 아니고, 그렇다고 훌륭한 테스터들과 함께 일하는 사람들만 애자일을 만들어 내는 것도 아니다. 켐 케이너 Cem Kaner 는 “애자일이 테스터를 해고했다"라고 즐겨 말했는데, 이는 테스터들을 프로시저라는 철옹성을 만들고 그 안에 숨어있는 사람들로 이해했기 때문이다. 궁극적으로 애자일과 데브옵스는 터틀넥 스웨터를 입은 사람들이 커피를 홀짝거리며 우리가 80년대에 겪었던 문제를 논의하는 것 같은 새롭고 힙한, 밀레니얼 세대에 걸맞는 껍데기와 분위기를 씌워 놓은 것뿐이다. 물론 일부 세세한 항목들은 바뀌기는 했다. 하지만 스스로를 테스터라고 부르는 것조차도 외면해야 한다는 압박을 받고 있다. 이전에도 영양 결핍 상태나 다름없이 빈약했던 테스팅 장인정신이라는 개념이, 이제는 쿨해 보이고 앞서가는 것처럼 보이고 싶은 사람들에게 공격을 받는 처지가 되어버렸다. 나의 오랜 친구들은 한때 테스터였지만 이제는 “품질 코치 quality coach”가 되었다. 그들 중 일부는 스스로 테스팅은 이제 구닥다리가 되어버렸다고 자조한다.

 

오늘날 우리가 마주한 문제임과 동시에 80년대에도 존재했던 오래된 문제는 무엇인가?

모든 테스팅이 정형화되고 자동화되어야 한다고 관리자들이 믿고 있는 것이다.

 

그들은 왜 이렇게 믿고 있는가?

이들은 탁월한 테스터들이 실제로 무슨 일을 하는지, 그리고 어떻게 수행하는지 알지 못하고 이해하려 하지 않기 때문이다. 그들은 또한 대부분의 경우 테스팅을 배우려고 하지 않는다. 유연한 사회적 프로세스가 아니라, 얄팍한 알고리즘에 기반한 프로세스라고 치부하고 있는 테스팅에 대해 유일한 변명(즉, ‘잘 알지 못한다’라는)조차 할 수 없게 되기 때문이다.

 

그럼 오늘날 이전에 비해 정말 달라진 것은 무엇인가?

오늘날은 테스터에 대한 보호와 양육은 현저하게 줄어든 반면(훨씬 적어진 테스트 매니저와 더 적어진 테스트 팀), 출시에 대한 압박은 더욱 거세지고 있다(빨라진 배포 덕분에). 오늘날 ISTQB와 같은 조직은 간단한 조언과 다양한 곳에 적용될 수 있는 신화를 제공해 사람들을 이런 두려움과 의심에서 벗어나게 하고 수익을 얻는다. 한 번도 경험해 보지 못한 테스팅 경험을 온라인을 통해 미리 습득할 수 있다는 것은 분명 환상적이다. 하지만 이런 좋은 경험도 결국은 썩어가는 바다를 가로질러 홀로 수영하는 것과 다르지 않다.

 

왜 모든 사람들이 테스팅을 수행할 수 없는가?

모든 사람들이 테스팅을 도와줄 수 있다. 이는 당연히 좋은 일이다. 내가 말하고 싶은 것은, 문제를 찾아내는 것이 핵심인 높은 수준의 테스팅을 수행하기 위해 스스로 준비하고, 테스팅이 왜 필요한지 분석하려면 정말 특별한 수준의 헌신과 집중이 필요하다는 것이다. 누구나 테스트를 수행할 수는 있다. 누구나 법정에서 스스로를 변호할 수 있는 것처럼 말이다. 하지만 그렇다고 누구나 자신을 효과적으로 방어할 수 있는 변호사가 될 수 없는 것처럼, 누구나 테스트를 책임감 있게 수행할 수 있는 것도 아니다.

 

테스팅에 관한 문화가 이렇게 좋지 않은데 왜 바뀌지 않는 걸까?

테스팅이 경영이나 교육, 정치와 같이 ‘활동’의 영역에 속해 있기 때문이다. 이 영역 안에 있는 것들은 쉽게 잘못된 것을 행하기 쉽고, 그에 따라 발생하는 문제들에 대해 스스로가 아닌 다른 사람들을 비난하기 쉽기 때문이다.

 

왜 테스팅 업계는 성장하지 못하는가?

테스터들이 지혜를 얻고 스스로 목소리를 높이는 법을 배우기 전에 업계를 떠나기 때문이다. 또한 야망 있고 똑똑한 사람들은 테스팅 업계에 스스로 “정체”되기를 원하지 않는다.

 

그럼에도 불구하고 제임스, 왜 아직 테스팅 업계에 남아있나요?

나는 스스로 테스터들의 스승이 되었기 때문이다. 나는 테스터를 교육하고 그들에게 도움이 되는 테스팅을 수행할 수 있는 시스템을 개발했다. 내가 열렬히 주장하는 ‘탁월함의 문화 culture of excellence’에 대한 끊임없는 공격이 있었음에도 불구하고, 이런 것들이 내 경력을 좀 더 의미 있는 것으로 만들어 주었다.

 

마이클 볼튼은 내게 조금 더 희망적인 내용을 추가하라고 조언해 주었다. 그는 내가 이런 상황을 풀 수 있는 해답을 제시해 주길 바랬다. 물론 나 나름대로의 해답을 가지고 있다. 이 웹사이트는 테스팅에 관한 유용한 지식의 보고다. 또한 나는 테스팅을 가르치기도 한다. 이 사이트 어딘가에 내가 가르치는 클래스의 링크도 존재할 것이다. 원한다면, 금방 찾아낼 수 있을 것이다. 이 웹사이트의 나머지 부분이 모두 이 해답에 관한 것이다.

 

애플에 새로 입사한 테스터로서 처음 10500 De Anza 빌딩에 들어선 순간부터 지금까지, 나는 테스팅에 관한 문제를 풀어줄 수 있는 보편적인 해답은 없다고 생각해왔다. 하지만 누군가, 이 글을 읽고 있는 당신이, 이 테스팅의 세계를 조금이라도 더 나은 것으로 만들 수 있다고 생각한다.