Software testing is a process of verifying that our application or software is working without any defects. Software testing is used to make our application/software more user friendly and prevent any defects in the software at later point of time.
소프트웨어 테스팅의 종류
기능 테스트:
단위 테스트: 단위 테스트에서는 애플리케이션 모듈의 더 작은 단위를 테스트합니다. "구성 요소 테스트"라고도 합니다.
주로 개발자가 화이트박스 방식을 사용하여 수행합니다.
단위 테스트의 목적은 개발 초기 단계에서 버그를 찾아내는 것입니다.
예:
뱅킹 애플리케이션에서 유효한 사용자 이름/비밀번호, 유효하지 않은 사용자 이름 및 비밀번호 등과 같은 다양한 테스트 사례를 사용하여 로그인 페이지와 같은 애플리케이션 단위를 테스트합니다.
통합 테스트: 통합 테스트에서는 개별 단위를 통합하고 집합적인 기능을 테스트합니다.
테스트 서버에서 테스터가 수행합니다.
통합 테스트의 범위는 개별 단위 간의 상호 작용 중에 오류를 노출하는 것입니다.
비기능 테스트 유형:
성능 테스트: 이 테스트에서는 다양한 작업 부하에서 소프트웨어의 성능과 안정성을 확인합니다. 성능 테스트 범위에는 소프트웨어의 속도, 확장성, 안정성 및 신뢰성(제품의 보안 여부) 테스트가 포함됩니다.
예: 로그인 페이지에 대한 뱅킹 애플리케이션의 응답 시간은 일반적으로 60초이며, 10,000명의 사용자가 동시에 로그인 페이지에 액세스하려고 해도 이 응답 시간은 변하지 않습니다.
부하 테스트: 부하 테스트에서는 소프트웨어가 대규모 트랜잭션이나 부하 증가를 처리할 수 있는지 테스트합니다. 부하 테스트는 대부분 최종 사용자가 수행합니다. 예 : 막대한 거래 부하가 뱅킹 애플리케이션에 전달되는 경우.
볼륨 테스트: 볼륨 테스트에서는 한 번에 많은 볼륨을 전달하고 시스템의 응답 시간을 확인하여 소프트웨어를 테스트합니다. 예: 뱅킹 애플리케이션 응답 시간을 확인하기 위해 시스템에 엄청난 양의 데이터가 전달되는 경우.
소프트웨어 개발 수명 주기 및 소프트웨어 테스트 수명 주기:
단위 테스트, 통합 테스트, 시스템 테스트와 같은 다양한 유형의 소프트웨어 테스트가 무엇인지, 특정 유형에 가장 적합한 유형을 이해하려면 소프트웨어 개발 수명주기 및 소프트웨어 테스팅 수명주기와 그에 포함된 다양한 테스트가 무엇인지 알아야 합니다. 테스트 케이스. 테스터가 주어진 시나리오에 대한 테스트 케이스를 작성하고 실행하는 방법을 아는 것도 중요합니다. 다음은 소프트웨어 테스트 수명주기의 주요 단계입니다.
1.요구사항 분석
이는 테스터가 다양한 이해관계자와 논의하여 프로젝트 요구사항을 분석하고 RTM(요구사항 추적성 매트릭스는 요구사항을 해당 테스트 케이스와 연관시키는 문서입니다)을 준비하는 STLC의 첫 번째 단계입니다.
2.테스트 계획
이 단계에서 테스트 관리자는 테스트 계획 또는 전략, 테스트 도구 선택, 범위 내 테스트 유형, 비용 추정, 리소스 계획, 필요한 교육 등을 결정합니다.
3.테스트 케이스 개발
테스트 케이스 개발 단계에서는 테스트 케이스, 스크립트, 데이터가 생성됩니다.
4.테스트 환경 설정
이 단계에서는 소프트웨어 및 하드웨어 요구 사항을 기반으로 테스트 환경을 설정합니다. 이 단계에서는 연기 테스트가 수행됩니다.
5.테스트 실행
이 단계에서는 테스트 케이스, 스크립트가 실행되고 결과가 문서화됩니다. 버그/결함도 보고되고 결함이 수정된 후 이 단계에서 재테스트도 수행됩니다.
6.테스트 종료
이는 테스터가 테스트 결과와 테스트 완료 지표를 보고하는 STLC의 마지막 단계입니다. 이 단계에서는 테스터가 EOTR(테스트 종료 보고서)도 준비하여 제출합니다.
소프트웨어 테스팅의 중요성
비용 절감: 소프트웨어를 자주 테스트하므로 나중에 불필요한 수정을 방지할 수 있습니다.
우수한 제품 품질 및 보안: 소프트웨어 테스트는 제품을 유지 관리하고 보안 침해를 방지하는 데에도 도움이 됩니다
고객 만족: 소프트웨어 테스팅은 고객 만족을 달성하고 애플리케이션에 대한 피드백을 수집하는 데에도 기여합니다.
초기 단계에서 문제를 식별하여 위험을 완화하고 개발 후반 단계와 출시 후 심각한 문제를 예방할 수 있습니다.
소프트웨어가 지정된 요구 사항을 충족하고 의도한 기능을 수행하는지 확인합니다.
취약점을 탐지하고 보안 위협 및 위반으로부터 소프트웨어를 보호함으로써 보안을 강화할 수 있습니다.
소프트웨어 테스팅은 프로젝트에 작성된 코드의 문제와 결함을 식별하여 소프트웨어 제품이 배송되기 전에 수정하거나 수정할 수 있도록 하며 고객 측에서는 제품 품질을 향상시키는 데 적합합니다. 시스템 테스트는 실제 요구 사항과 다른 차이, 오류 또는 누락된 요구 사항을 식별하는 데 도움이 됩니다.
위 내용은 #소프트웨어 테스팅 소개#의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!