functional testing vs performance testing
기능 테스트 대 성능 테스트 :
차이점 성능 테스트, 부하 테스트 및 스트레스 테스트 지난 튜토리얼에서 예제로 설명했습니다.
소프트웨어 테스팅은 소프트웨어 기능의 검증 또는 검증이 발생할 수있는 광범위한 영역을 다룹니다. 때때로, 비 기능적 측면은 기능적 측면과 관련이 적어집니다. 그들은 실제로 수행되지 않습니다. 소프트웨어 테스트 중에 동시에.
=> 전체 성능 테스트 자습서 시리즈를 보려면 여기를 클릭하십시오.
이 문서에서는 소프트웨어 테스트 수명주기의 다양한 시나리오에서 소프트웨어 제품 품질의 추가 이점에 대해 설명합니다. 기능적 및 비 기능적 둘 다 동시에 취할 때.
학습 내용 :
성능 테스트와 기능 테스트의 빠른 차이점
Sl 아니오 | 기능 테스트 | 성능 시험 |
---|---|---|
1 | 예상 출력에 대한 명확한 입력을 사용하여 소프트웨어의 정확성을 확인하려면 | 다양한 부하 조건에서 시스템의 동작을 확인하려면 |
두 | 수동 또는 자동화 가능 | 자동화하면 효과적으로 수행 할 수 있습니다. |
삼 | 모든 작업을 수행하는 한 명의 사용자 | 원하는 작업을 수행하는 여러 사용자 |
4 | 고객, 테스터 및 개발자의 참여가 필요합니다. | 고객, 테스터, 개발자, DBA 및 N / W 관리 팀의 참여 필요 |
5 | 프로덕션 규모의 테스트 환경은 필수가 아니며 H / W 요구 사항은 최소화됩니다. | 부하를 채우기 위해 프로덕션 테스트 환경 및 여러 H / W 시설에 가까워 야합니다. |
기능 테스트와 성능 테스트를 동시에 수행해야하는 이유는 무엇입니까?
기능 테스트는 모든 소프트웨어 시험판에서 훨씬 더 중요해집니다. 실제 결과 기반 검증 및 검증 복제 된 프로덕션 또는 테스트 환경에서 테스트가 일반적으로 발생합니다.
결함 누출은 가장 큰 문제 중 하나가 될 수 있습니다.
테스터는 제품의 품질 측면에서 개발자보다 더 많은 책임이 있습니다. 기본적으로 그들은 테스트 된 제품에 결함이 누출되는 것을 원하지 않습니다. 테스터는 일반적으로이를 달성하기 위해 기능 테스트 만 수행하는 경향이 있습니다.
다음은 사이의 대화입니다테스트 관리자 및 테스터 :
(Test Manager는‘TM’, Tester는‘TR’)
TM : 안녕 친구… 제품‘A’테스트는 어때요?
TR : 네… 우리는 더 큰 방식으로 진행하고 있습니다.
TM : 환상적입니다. 기능 테스트가 실행되는 동안 성능 테스트 측면에서 우리의 범위는 무엇입니까?
TR : 우리는 그것들을 다루지 않습니다. 우리의 결과물은 비 기능적 영역이 아닌 기능적 영역에만 있어야합니다. 또한 우리가 사용하는 테스트 환경은 프로덕션의 정확한 복제본이 아닙니다.
위의 대화에서 고려해야 할 몇 가지 질문이 있습니다.
- 기능 테스트에 성능에 대한 종속 요인이 있습니까?
- 소프트웨어의 성능이 저하되었지만 성능을 확인하지 않고 제품을 배송하면 어떻게됩니까?
- 성능 테스트 – 기능 테스트 프로세스 내에서 공존합니까?
테스터가 요청하지 않는 한 비 기능적 측면에서 작업하지 않는 것이 일반적인 관행이되었습니다. 피하는 것이 일반적입니다. 비 기능 테스트 클라이언트가 테스트중인 소프트웨어의 성능 문제를보고 할 때까지
따라서 고려해야 할 두 가지 질문이 있습니다.
- 성능 – 기능 테스트에 영향을 줍니까?
- 고객이 걱정하더라도 성능 테스트를 별도의 결과물로 유지합니까?
성능 테스트는 중대한 !
기술 지원 인터뷰 질문 및 답변 pdf
소프트웨어는 다음과 같은 다양한 아키텍처 및 다음 모델을 기반으로 작동합니다.
- 필수 응답 응답 모델
- 거래 기반 시스템
- 부하 기반 시스템
- 데이터 복제 기반 시스템
위에서 언급 한 체계적 모델의 기능 테스트 동작은 시스템 성능에 따라 다릅니다.
자동화 관점에서는 성능 테스트에 많은주의가 필요합니다.
다음은 사이의 대화입니다클라이언트 및 테스트 관리자.
(클라이언트는‘CL’, 테스트 관리자는‘TM’)
CL : 따라서 우리가 요청한 솔루션에 도달하면 현재 진행중인 테스트가 여러 번 반복되기를 바랍니다.
TM : 네, 할 수 있습니다. 당신이 말했듯이 반복 테스트의 확률이 더 높을 것입니다. 우리는 기능 (회귀) 테스트를 처리하기위한 자동화를 제안하고 싶습니다.
CL : 좋습니다. 승인 할 수 있도록 접근 방식을 보내주세요. 자동화는 최소한의 노력으로 훨씬 더 높은 출력을 제공합니다.
TM : 바로 그거죠. 우리는 접근 방식을 연구하고 개념 증명을 통해 다시 연락을 드릴 것입니다.
위의 대화에서 클라이언트의 요구 사항은 효율성을 최적화하는 것임이 분명합니다.
사례 연구
회사 ABC는 소프트웨어 A 개발 프로젝트를 진행하고 있습니다. 소프트웨어 A 테스트는 XYZ 회사에서 수행하고 있습니다.
Company ABC와 XYZ의 계약에는 협력에 대한 몇 가지 제한이 있습니다. 두 회사 간의 모든 논의는 주 1 회 또는 월 3 회 이루어져야합니다. 시스템은 요청-응답 모드 모델에서 작동합니다. 개발 단계는 ABC 사에 의해 완료되었습니다.
이제 회사 XYZ가 소프트웨어 A에 대해 공식적인 기능 테스트를 수행 할 때입니다. XYZ는 소프트웨어 A 테스트 작업을 시작합니다. 그들은 소프트웨어에 대한 명확한 정보를 제공하고 2주기의 테스트 후 라이브 구현을 위해 'Go'를 제공했습니다.
테스트 팀의 품질 인증서에도 불구하고 실제 구현은 잘 진행되지 않았습니다. 많은 포스트 프로덕션 버그가있었습니다. 엔드-투-엔드 비즈니스 프로세스의 기능 중단을 포함하여 클라이언트가 직면 한 많은 문제가있었습니다.
이제 무엇입니까문제?
- 개발팀과 테스팅 팀 간의 협업에 제한이있는 문제인가요?
- 요구 사항이 100 % 포착되지 않았습니까?
- 제품이 적절한 테스트 환경에서 테스트되지 않았습니까?
- 아니면 다른 원인이 있습니까?
신중한 조사와 분석 끝에다음은 추론되었습니다:
- 응답을 가져 오는 동안 성능 문제가있는 종속 및 상호 종속 응용 프로그램은 거의 없었습니다.
- 사용 된 테스트 입력은 절대적이지 않았습니다.
- 소프트웨어의 견고성은 고려되지 않았습니다.
- 여러 독립 응용 프로그램 간의 많은 동기화 문제.
- 소프트웨어 테스트는 고려되지 않은 여러 번의 재 작업을 수행했습니다.
따라서교정 조치계획 팀이 개입하여 다음이 제안되었습니다.
- 개발 팀과 테스트 팀 간의 상호 작용을 늘려야합니다.
- 모든 종속 애플리케이션을 연결하고 시스템 기능 테스트에 포함해야합니다.
- 비 프로덕션 환경에 공간을 제공하려면 요청 및 응답 시간 제한 값을 늘려야합니다.
- 기능 테스트에서는 단순에서 복잡한 것에 이르기까지 다양한 입력을 사용해야합니다.
- 비 기능 테스트, 특히 성능 및 부하 테스트는 수정 팀의 조언에 따라 수행해야합니다.
- 시스템 테스트 외에도 시스템 통합 테스트를 수행해야합니다.
- 두 테스트 반복 사이에 최소 시간 간격을 제공해야합니다. 이것은 이전에 확인 된 버그를 다시 테스트하기위한 것입니다.
- 이전 반복에서 식별 된 모든 버그는 현재 반복에서 수정되어야합니다.
테스트 팀은 제안 된 모든 조치를 구현했으며 짧은 시간에 많은 결함을 발견했습니다.
관찰 :
- 테스트주기 시간을 최적화하여 소프트웨어의 실시간 구현 일정이 크게 개선되었습니다.
- 소프트웨어 품질 최적화에서 좋은 진전이있었습니다. 따라서 구현 후 지원 티켓이 엄청나게 감소했습니다.
- 재 작업이 줄어들었고 재 작업이 아닌 반복 테스트였습니다. 서로 다른 반복 사이에서 관찰 된 품질이 더 좋아졌습니다.
결론
기능 테스트 실행 중에 비 기능 테스트를 수행하는 것이 더 유리하고 전체 소프트웨어 품질에 더 많은 이점을 추가합니다. 이는 성능 버그 (테스트 환경 및 종속성으로 제한됨)를 식별하므로 기능 문제 가정의 상황을 줄여줍니다.
프로젝트의 다른 이해 관계자들과 강력한 관계를 유지하기 위해 기능 및 비 기능 테스트 (최소 수준까지)를 수행하기위한 충분한 계획이 수행되어야합니다.
저자 정보 : Nagarajan이 쓴 기사입니다. 그는 수동 및 자동화 측면에서 Banking, Airlines, Telecom과 같은 다양한 기능 분야에서 6 년 이상의 테스트 경험을 가진 테스트 리드로 일하고 있습니다.
다음 자습서에서는 성능 테스트 계획 및 테스트 전략에 대해 자세히 설명합니다.
=> 완전한 성능 테스트 자습서 시리즈를 보려면 여기를 방문하십시오.