Akashic Records

User Stories Applied : Chapter 6 사용자 스토리 인수 테스트 본문

오래된글/소프트웨어공학

User Stories Applied : Chapter 6 사용자 스토리 인수 테스트

Andrew's Akashic Records 2018. 4. 18. 13:36
728x90

인수 테스트를 작성하는 이유 하나는 고객과 개발자가 대화를 나누는 과정에서 언급된 세부사항들을 나타내기 위함이다. 사용자 스토리에서는 세부사항을 테스트로 표현한다. 나중에 무엇을 테스트할지에 관한 짧은 메모를 스토리 카드 뒷면에 짧게 적어 놓는다. 향후 만들어지는 테스트는 해당 스토리가 정확하고 완전하게 개발되었는지 입증하는데 사용된다.


코딩하기 전에 테스트부터 작성하기

인수테스트는 일반적으로 다음 같을 작성한다.

  • 고객과 개발자가 스토리를 가지고 대화를 나누는 도중, 명백한 세부사항을 기록하기 위해

  • 이터레이션 초기 코딩을 시작하기 전에 스토리를 명확하게 이해하고자

  • 프로그래밍 중이거나 이후라도 스토리에 필요한 새로운 테스트를 발견할


작성을 시점에서는 다음을 생각해보면 좋다.

  • 프로그래머가 스토리에 대해 알아야 하는 내용은 무엇인가?

  • 나는 스토리가 어떤 모습으로 구현될 거라고 가정하는가?

  • 스토리가 다르게 동작할 만한 상황은 없는가?

  • 스토리를 진행하는 중에 잘못될 만한 일은 무엇인가?


고객이 테스트를 명시한다.

소프트웨어는 고객의 비전을 실현하기 위해 개발하는 것이다. 따라서 인수 테스트는 고객이 명시해야 한다.


테스트 수행은 프로세스의 일부다.

테스터는 프로그래머의 설명에 의존하지 않고 의심하고 확인하는 사고방식을 가지고 진행하여야 한다. 테스트는 개발 프로세스의 일부로 보아야 하며, 테스트가 확실히 수행되도록 하는 것은 제품관리자와 테스터의 공동 책임이다.


테스트는 얼마나 필요한가?

고객은 테스트를 추가함으로써 스토리의 가치와 명확성을 높일 있는 계속 작성해야 한다. 고객은 스토리의 의도가 개발자에게 명확하게 전달되도록 하는 초점을 맞추어 테스트를 작성해야 한다.


테스트의 종류

  • 기능테스트 : 프로그램의 기능이 기대한 대로 구현되었는지

  • 사용자 인터페이스 테스트 : 사용자 인터페이스 구성 요소들이 예상한 대로 동작하는지

  • 사용성 테스트 : 프로그램이 쉽게 사용할 있도록 개발 되었는지

  • 성능 테스트 : 프로그램이 다양한 작업 부하에서 얼만큼 성능을 보이는지

  • 스트레스 테스트 : 사용자 초과, 트랜잭션 과다 등의 스트레스 상황에서 프로그램이 어떻게 동작하는지


728x90
Comments