what is monkey testing software testing
소프트웨어 테스팅에서 몽키 테스팅이란 무엇입니까?
소개 :
Monkey 테스트는 사용자가 임의의 입력을 제공하고 동작을 확인 (또는 애플리케이션 충돌을 시도)하여 애플리케이션을 테스트하는 소프트웨어 테스트의 기술입니다. 대부분이 기술은 사용자가 임의의 잘못된 입력을 입력하고 동작을 확인하는 경우 자동으로 수행됩니다.
앞서 말했듯이 규칙은 없습니다. 이 기술은 사전 정의 된 테스트 케이스 또는 전략을 따르지 않으므로 테스터의 기분과 직감에 영향을줍니다.
많은 경우,이 기술은 자동화되어 있거나 무작위 입력을 생성하고 테스트중인 애플리케이션에 공급하고 동작을 분석 할 수있는 프로그램 / 스크립트를 작성할 수 있다고 말해야합니다. 이 기술은 다음 작업을 할 때 매우 잘 작동합니다. 부하 / 응력 테스트 논스톱 임의 입력을 증명하여 애플리케이션을 중단하려고 할 때.


'원숭이'에 대해 말하기 전에 '말'을 소개하겠습니다.
배열 자바 예제에 요소 추가
말에 굴레가 보이 시죠? 말이 집중력을 잃지 않고 길을 똑바로 달리는 데만 집중하도록 지시하고 제어하는 데 사용됩니다.

마찬가지로 수동이든 자동화 든 우리는 테스트 케이스 / 계획 및 전략에 의해 지시되고 주도되고 품질 메트릭에 의해 제어되기 때문에 테스트의 말과 같습니다. 우리 주변에는 굴레가 있기 때문에 초점을 돌리고 테스트 케이스 세트에 엄격히 집중하고 순종적으로 실행하고 싶지 않습니다.
말이 되어도 괜찮은데 가끔 원숭이가되는 것을 좋아하지 않나요?
원숭이 테스트는“원하는 일을하는 것; 자동으로”.
이 테스트 기술은 특정 패턴을 따르지 않기 때문에 약간 혼란 스럽습니다. 하지만 여기서 질문은
왜?
큰 웹 애플리케이션을 세상에 공개 할 때마다 애플리케이션을 제공하는 사용자 유형을 상상할 수 있습니까? 확실히 좋은 사용자가 있지만 불쾌한 사용자가 없을 것이라고 확신 할 수는 없습니다. 'n'수의 불쾌한 사용자가 있습니다. 이들은 원숭이와 같고 응용 프로그램을 가지고 놀면서 이상하거나 큰 입력을 제공하거나 응용 프로그램을 중단하는 것을 좋아합니다.
Windows에서 json 파일을 여는 방법
따라서 이러한 라인을 테스트하려면 테스터도 Monkey가되어야하며, 애플리케이션이 외부의 불쾌한 원숭이로부터 안전하도록이를 생각하고 테스트해야합니다.
원숭이 유형
2 : 스마트와 덤프가 있습니다.
똑똑한 원숭이 – 스마트 원숭이는 다음과 같은 특성으로 식별됩니다.
- 응용 프로그램에 대한 간단한 아이디어를 가지고
- 그들은 응용 프로그램 페이지가 어디로 리디렉션되는지 알고 있습니다.
- 그들은 그들이 제공하는 입력이 유효하거나 유효하지 않다는 것을 알고 있습니다.
- 그들은 응용 프로그램을 중단하기 위해 작동하거나 집중합니다.
- 오류를 발견하면 버그를 신고 할만큼 똑똑합니다.
- 그들은 메뉴와 버튼을 알고 있습니다.
- 스트레스 및 부하 테스트를 수행하는 것이 좋습니다.
바보 원숭이 – 멍청한 원숭이는 다음과 같은 특징으로 식별됩니다.
- 그들은 응용 프로그램에 대해 전혀 모릅니다.
- 제공하는 입력이 유효하거나 유효하지 않다는 것을 알지 못합니다.
- 응용 프로그램을 무작위로 테스트하고 응용 프로그램의 시작점이나 끝에서 끝까지의 흐름을 인식하지 못합니다.
- 그들은 응용 프로그램을 인식하지 못하지만 환경 오류 또는 하드웨어 오류와 같은 버그도 식별 할 수 있습니다.
- UI와 기능에 대해 잘 모릅니다.
결과:
Monkey 테스트의 결과로보고 된 버그는 자세한 분석이 필요합니다. 단계 때문에 버그 재현 알 수없는 경우 (대부분) 버그를 재현하는 것이 어려워집니다.
모든 기능이 테스트되고 응용 프로그램의 효과에 대해 어느 정도의 확신이있는 테스트의 후반 단계에서이 기술을 수행하면 좋을 것이라고 생각합니다. 테스트 단계를 시작할 때이를 수행하면 위험이 더 높아집니다. 유효하고 잘못된 임의 입력을 생성하는 프로그램이나 스크립트를 사용하는 경우 분석이 조금 더 쉬워집니다.
원숭이 테스트의 장점 :
- 일부 기본 오류를 확인할 수 있습니다.
- 간편한 설정 및 실행
- '그다지 숙련되지 않은'자원으로 수행 할 수 있습니다.
- 소프트웨어의 신뢰성을 테스트하는 좋은 기술
- 더 큰 영향을 미칠 수있는 버그를 식별 할 수 있습니다.
- 비싸지 않음
원숭이 테스트의 단점 :
- 버그가 발견되지 않을 때까지 며칠 동안 계속 될 수 있습니다.
- 버그 수가 적습니다.
- 버그를 재현하는 것은 (발생한 경우) 도전이됩니다.
- 일부 버그 외에도 테스트 시나리오의 일부 '예상되지 않은'출력이있을 수 있으며 분석이 어렵고 시간이 많이 걸립니다.
결론
'Test Monkeys'또는 Monkey 테스트가 혼란 스럽다고 말하지만, 계획을 세우고 나중 단계에서 시간을 할당하는 것이 좋습니다.
이 기술의 초기 단계에서는 좋은 버그를 찾지 못할 수도 있지만 결국 메모리 누수 나 하드웨어 충돌과 같은 정말 좋은 버그를 발견 할 수 있습니다. 정기적 인 테스트 과정에서 일반적으로 '이 시나리오'가 발생하지 않을 것이라고 생각하는 많은 경우를 무시합니다. 그러나 발생하는 경우 심각한 영향을 미칠 수 있습니다 (예 : 낮은 우선 순위 및 높은 심각도 버그).
원숭이 테스트를 수행하면 실제로 이러한 시나리오를 파악할 수 있습니다. 우리는 어떤 식 으로든 그러한 상황을 접하게되며, 그것을 분석 할 시간을 찾고 해결책을 생각해 낼 것을 권합니다.
제 생각에 가장 좋은 방법은“말”과“원숭이”를 함께 모으는 것입니다.
'Horse'를 통해 우리는 잘 계획되고 잘 정의 된 정교한 테스트 방법을 따를 수 있으며 Monkey를 통해 정말 불쾌한 상황을 파악할 수 있습니다. 함께 소프트웨어의 품질과 신뢰도를 높이는 데 기여할 수 있습니다.
추천 도서
- 최고의 소프트웨어 테스트 도구 2021 (QA 테스트 자동화 도구)
- 소프트웨어 테스팅 QA 어시스턴트 작업
- 소프트웨어 테스팅 과정 : 어떤 소프트웨어 테스팅 기관에 가입해야합니까?
- 경력으로 소프트웨어 테스트 선택
- 소프트웨어 테스팅 기술 콘텐츠 작성자 프리랜서 작업
- 몇 가지 흥미로운 소프트웨어 테스트 인터뷰 질문
- 소프트웨어 테스팅 과정 피드백 및 리뷰
- 소프트웨어 테스팅 도움말 제휴 프로그램!