[코멘터리] 리세션 테스팅에 대한 질문과 답변들

2012.02.05 13:08QA


지난번에 포스팅했던 새로운 리그레션, 리세션 테스팅의 내용에 대해 여러분들이 의미있는 질문을 해주셨습니다. 

k16wire 님께서는 리세션 테스팅이라는 개념이 리그레션 테스팅을 효율적으로 하자는 것 이상의 의미가 있는 것인지를 궁금해 하셨고, 팀 블로그 누가바닷컴에서는 junhyungjin 님께서는 글쓴이가 리그레션 테스트 자체가 문제라고 생각하는 것인지, 아니면 그것을 수행하는 방법이 문제라는 것인지라는 질문을 하셨습니다.

이 질문들을 원 저자인 Anne-Marie Charrett 에게 메일로 전달했습니다.
각 항목들에 대해 좀 더 자세한 설명을 추가해 주었기에 원문과 함께 번역해서 포스팅 합니다.



1.     리세션 테스팅이라는 개념이 리그레션 테스팅을 효율적으로 하자는 것 이상의 의미가 있는 것인가? 리그레션 자체가 가지는 고유한 특성이 있는 것인가?

 

For me it’s about your mindset, rather than being subsets. Often I see people approach testing with two distinct phases in mind, the new functionality and then regression testing. The more mature the product is, the less focus is spent on new and more is spent on regression testing.

 

내게 있어 이 문제는 다른 어떤 부차적인 문제보다 마음가짐(mindset)의 문제다. 나는 종종 사람들이 구별되는 두 가지 측면, 즉 새로운 기능과 리그레션 테스팅을 구별하는 것을 보아왔다. 제품의 성숙도가 높을수록, 새로운 기능에 초점이 덜 맞추어지며, 리그레션 테스팅에 더 많은 시간이 할애된다.  

 

I think this is a bad idea, especially if you mission is to find bugs. I'm asking people to consider a different mindset, one that determines what's to be tested based on what offers the best value. For example, this may mean that instead of having two phases new & regression, you may have only one phase and test according to what has the greatest risk of failure.

 

내 생각에 이는 별로 좋은 생각이 못된다. 특히나 당신의 미션이 버그를 찾아내는 것이라면 더욱 그렇다. 나는 사람들에게 이와는 다른 마음가짐을 가질 것을 요구한다. , 최고의 가치를 제공하기 위해서는 무엇이 테스트 되어야 하는지를 결정해야 한다. , ‘새로운 기능리그레션을 따로 구별해서 인식하는 것이 아니라, 장애가 발생했을 경우 가장 심각한 리스크가 무엇인가하는 것만을 고려해 테스트를 수행해야 하는 것이다. 

 

It’s possible that Recession Testing has more inherent characteristics. I haven't looked into that, would you like to? 

 

리세션 테스팅이 좀 더 고유한 특성을 가지는 것도 가능하다. 그 점을 연구해 본적은 없는데, 당신

이 해볼텐가?




2.     당신은 리그레션 테스팅이라는 개념을 부정하는 것인가?

Regression testing has a place in testing, where the purpose of the testing is not to find out new information about the product, but to demonstrate nothing has changed. In my experience however, this is not whats' wanted from most testing. We're testing to find and discover as much new information about the product as we can. So, no I don't deny the concept of regression, but I think it’s wrong to place such an emphasis on it during our testing. It's time consuming and wasteful and offers little value in return.

 

리그레션 테스팅 역시 테스팅의 범주 안에 위치하고 있는 반면, 테스팅의 목적이 제품에 대한 새로운 정보를 찾아내는 것이 아니라 아무것도 변경되지 않았다는 것을 증명하는 것이다. 내 경험에 의하면, 대부분의 테스팅이 목적하는 바는 그게 아니다. 우리는 제품에서 가능한 한 많이 새로운 정보를 발견하기 위해 테스팅을 수행한다. 따라서, 리그레션이라는 개념 자체를 부정하지 않는 것이 아니라, 테스팅을 수행하면서 아무것도 변경되지 않았다는 것을 증명하는 것에 주안점을 두는 것이 잘못되었다고 생각한다. 이는 시간 소비적이고 또한 적은 가치만을 반환할 뿐이다. 


원 저자는 일단 리그레션 테스팅을 상당히 비판적인 시각에서 바라보고 있는 것 같습니다.
변경사항이 없다는 것을 검증하는 그 목적과, 변경사항이 발생할 때마다 원칙적으로 매번 풀 리그레션을 수행해야 하는 방법론 모두가 불합리하다고 판단하고 있는 것 같습니다.

하지만 저자 역시 답변을 통해 말했듯이, 아직까지는 그에 대한 구체적인 대안이나 리세션 테스팅만이 가지고 있는 독자적인 테스팅 방법론을 제시하지는 못하고 있는 실정입니다.

이에 관해 추가적인 포스트가 바로 이어지길 바라고, 가능하다면 바로 번역해 보도록 하겠습니다.

 

  • 프로필사진
    OEHAN2012.02.06 09:40

    이 사람 답변에 내용이 없네요. 뭐야!!!

    • 프로필사진
      BlogIcon 검은왕자2012.02.06 15:55 신고

      아직 개념에 대한 구상이 구체화되지 않은 건지도 모르죠.
      아니면 제가 질문의 의도를 잘못 전달하고 답변 역시 잘못 해석했는지도...
      일단 저는 이 분의 포스트에서 '리세션'이라는 개념이 등장했다는 것에 의미를 두고 있습니다.

      현재 번역하고 있는 Iain McCowatt 의 연작 포스트에 좀 더 디테일한 내용이 있는 것 같아요.

  • 프로필사진
    갼이2012.02.06 13:54

    의미없이 반복되는 Regression은 불필요하다는 말에는 동의하지만, 왜 그렇게 되었는지에 대하여 문제를 해결하지 않고 다른 방안을 찾다가 Recession으로 갔다는 것에서는 저로선 올바른 방향인지 의문이 듭니다.

    • 프로필사진
      BlogIcon 검은왕자2012.02.07 09:46 신고

      리그레션의 필요성만큼이나 그 비효율성에 대한 문제도 늘 제기되어 왔고 지금도 역시 그 대안을 찾기위한 노력이 계속되고 있는 것 같습니다. 지금까지는 자동화가 가장 효율적인 대안으로 대접받아온 것 같은데, 자동화 자체가 리그레션이란 개념을 부정하고 있는 건 아니어서 리세션은 또 다른 개념적 대안으로 후보에 올려도 좋을 것 같습니다. 물론 좀 더 구체적 대안이 제시되고 공감을 얻어야 하겠지만요.

    • 프로필사진
      갼이2012.02.07 13:05

      자동화는 효과적인 REgression의 대안이 될 수 있습니다. 실제 사용하는 입장에서 매우 강력한 Regression 방법입니다. 그러나 단기간에 환경을 구성할 수 없다는 점때문에 도입을 결정하거나 환경을 구성하는데 어려움이 많습니다. 환경을 구축, 관리하는(테스트 케이스나 시나리오가 아닌) 별도의 조직이 있고 없고가 큰 차이가 있어요.
      그리고 새롭게 제시한 Recession이라는 개념이 기존 Regression을 얼마나 개선하는지에 대한 내용이 없다보니 Regression의 개선인지 아니면 새로운 접근법인지 잘 모르겠습니다.

  • 프로필사진
    forestcat2012.02.08 09:14

    원 저자가 리세션에 대해 말하고자 하는게 무엇인지 이제야 좀 더 이해가 되네요. 다만 ‘새로운 기능’과 ‘리그레션’을 따로 구별해서 인식해선 안된다는 말에는 공감을 못하겠어요. 새로운 기능에는 새로운 결함 또한 숨어있을 가능성이 높으니까요.. 저자 말대로 굳이 가장 리스크가 높은걸 따지자면 '새로운 기능'이 될 것 같습니다. 제가 경험이 부족한 탓일까요?^^;; 게다가 게임QA에서는 항상 점검 일정에 쫓겨 변경점 확인에만 급급하니 "무의미한 리그레션"이라는 단어를 체감할 기회조차 없어 더욱 그렇게 느끼는 것 같습니다. ㅎㅎ

    • 프로필사진
      BlogIcon 검은왕자2012.02.08 20:29 신고

      ‘모든 버그가 동등하게 중요한가 그렇지 않으면 특정한 버그가 더 중요한가’라는 주제는 아직도 끊임없는 논의 대상이죠. 장애가 발생했을 경우 가장 심각한 리스크가 무엇인가를 고려한다면, 오래된 부분과 새로 변경된 부분을 가리지 않고 리스크가 선정될 수도 있겠죠.

      게다가 말씀하신대로 게임쪽은 참 리그레션을 적용하기 힘든 부분 중의 하나 같아요.
      MMORPG 같은 경우는 풀 리그레션의 범위 자체가 워낙 광범위한데다가, 자동화를 적용하기 가장 힘든 분야의 하나가 바로 게임 같더라구요. 이런 부분만 좀 해결된다면 게임QA도 많은 발전이 있을 것 같습니다. ^^