어떤 소프트웨어도 완전히 완벽할 수는 없습니다. 하지만 쓰레기를 만들 수있는 라이센스인가? 누락 된 성분은 품질을 정량화하는 우리의 꺼리는 것입니다. 품질을 높이기 위해서는 소프트웨어 응용 프로그램의 효과적인 성능을 보장하는 것이 매우 중요합니다. 응용 프로그램이 오류 없이 실행되도록 하려면 소프트웨어 테스트가 필요합니다. 이 소프트웨어 테스트 튜토리얼에서,나는 당신에게 당신이 테스트 측면에 대해 알아야 할 모든 것을 말할 것이다. 소프트웨어 테스팅이 무엇인지에 대한 이전 블로그에 계속,여기에 내가 깊은 다이빙과 아래에 언급 된 주제를 다룰 것입니다.
- 소프트웨어 테스팅 소개
- 소프트웨어 테스팅 기본 사항
- 소프트웨어 개발 수명주기
- 검증 및 검증 모델
- 소프트웨어 테스팅 방법
- 소프트웨어 테스팅 수준
- 소프트웨어 테스팅 문서 아티팩트
- 버그 라이프 사이클
- 수동 테스트
- 자동화 테스트 대 수동 테스트
당신은 또한 우리의 소프트웨어 테스팅 교육 전문가가 개념을 설명 한 소프트웨어 테스팅 튜토리얼의 기록을 통해 갈 수 있습니다 깊이.
초보자를위한 소프트웨어 테스팅 자습서/매뉴얼&자동화 테스트
이 비디오는 수동 테스트 및 자동화 테스트 접근 방식과 같은 다양한 유형의 테스트에 대해 설명합니다.
소프트웨어 테스팅 소개
오늘날의 기술 세계는 기계에 의해 완전히 지배되고 있으며,그 행동은 기계에 전력을 공급하는 소프트웨어에 의해 제어된다. 소프트웨어 테스트는 우리의 모든 걱정에 비용 효율적인 솔루션을 제공합니다. 소프트웨어 테스트 란 무엇입니까? 소프트웨어 테스트는 소프트웨어 버그를 찾기 위해 소프트웨어 응용 프로그램의 기능을 평가하는 프로세스입니다. 그것은 개발한 소프트웨어가 지정된 요구에 응했다는 것을 검사하고 고급 제품을 달성하기 위하여 소프트웨어에 있는 어떤 결점든지 확인합니다. 기본적으로 실제 요구 사항에 반하는 간격,오류 또는 누락 된 요구 사항을 식별하기 위해 시스템을 실행하고 있습니다.
소프트웨어 테스팅이란? 이 소프트웨어 제품 여부를 확인합니다:
- 설계 및 개발을 유도 한 비즈니스 및 기술 요구 사항 충족
- 요구 사항에 따라 작동
- 동일한 특성으로 구현할 수 있습니다
자,소프트웨어 테스팅 튜토리얼 문서에서 더 이동 하 고 소프트웨어 테스팅의 기초에 대 한 몇 가지 통찰력을 얻을 수 있습니다.
소프트웨어 테스팅 기본 사항
먼저 소프트웨어 개발 수명주기가 무엇인지 알려 드리겠습니다.
소프트웨어 개발 수명주기
소프트웨어 개발 수명주기는 소프트웨어 산업에서 고품질 소프트웨어를 설계,개발 및 테스트하는 데 사용되는 프로세스입니다. 고객의 기대치를 충족하거나 초과하고 시간 및 비용 견적 내에 완료되는 고품질 소프트웨어를 생산하는 것을 목표로합니다. 아래 다이어그램은 다음과 관련된 다양한 단계를 보여줍니다.소프트웨어 테스팅 튜토리얼-에두레카
그림: 소프트웨어 개발 라이프 사이클-소프트웨어 테스팅 자습서
요구 사항 단계
요구 사항 수집 및 분석은 소프트웨어 개발 라이프 사이클에서 가장 중요한 단계입니다. 비즈니스 분석가는 고객의 비즈니스 요구에 따라 고객/클라이언트로부터 요구 사항을 수집하고 비즈니스 요구 사항 사양의 요구 사항을 문서화합니다(문서 이름은 조직에 따라 다릅니다).
분석 단계
요구 사항을 수집하고 분석하면 다음 단계는 제품 요구 사항을 정의하고 문서화하여 고객의 승인을 얻는 것입니다. 이는 소프트웨어 요구 사양 문서를 통해 기록됩니다. 프로젝트 수명주기 동안 설계 및 개발해야 할 모든 제품 요구 사항으로 구성됩니다
설계 단계
이 단계에는 두 단계가 있습니다:
- 하이레벨 설계–개발될 소프트웨어 제품의 아키텍처를 제공하며,설계자와 선임 개발자가 수행합니다.
- 하이레벨 설계-선임 개발자가 수행합니다. 여기에서 제품의 각 기능이 어떻게 작동하고 모든 구성 요소가 어떻게 작동해야하는지에 대한 통찰력을 제공합니다.
이 단계의 결과는 다음 단계의 입력으로 작동하는 상위 수준의 문서와 하위 수준의 문서입니다.
개발 단계
모든 수준의 개발자(노인,후배,신입생)가이 단계에 참여합니다. 이 단계는 소프트웨어 코드 작성을 시작하는 단계입니다.
테스트 단계
소프트웨어가 준비되면 테스트 부서로 보내져 다른 결함이 있는지 철저히 테스트합니다. 소프트웨어 테스트는 수동으로 또는 자동화 된 테스트 도구를 사용하여 수행되며 소프트웨어의 모든 구성 요소가 잘 작동하는지 확인합니다. 소프트웨어가 오류가 없으면 다음 단계로 넘어갑니다.
배포&유지 관리 단계
제품에 오류가 없으면 해당 제품을 사용하기 위해 고객에게 배달/배포됩니다. 배포는 배포/구현 엔지니어가 수행합니다. 고객이 개발 된 시스템을 사용하기 시작하면 실제 문제가 발생하고 때때로 해결해야합니다. 고객이 발견 한 이러한 문제를 감지하고 해결하는 것은 유지 보수 단계에서 이루어집니다.
이것은 소프트웨어 개발 라이프 사이클에 관한 것이 었습니다. 당신이 소프트웨어 테스트 과정에 관련된 여러 단계에 대해 알고 싶은 경우에,당신은 소프트웨어 테스트 수명주기에이 블로그를 읽을 수 있습니다. 이 문제를 이해한 후,이 소프트웨어 테스팅 튜토리얼을 통해 더 나아가 보겠습니다.
모델은 이제 가장 널리 사용되는 소프트웨어 개발 프로세스 중 하나입니다. 브이 모델의 도입은 실제로 요구 사항 단계에서 바로 테스트의 구현을 입증했다. 검증 및 검증 모델
소프트웨어 테스트에서 검증 및 검증이란 무엇입니까?
검증:검증은 정적 분석 기법입니다. 여기서 테스트는 코드를 실행하지 않고 수행됩니다. 예를 들면 다음과 같습니다-리뷰,검사 및 도보.
유효성 검사:유효성 검사는 코드를 실행하여 테스트를 수행하는 동적 분석 프로세스입니다. 예로는 기능 및 비 기능 테스트 기술이 있습니다.
브이 모델에서는 개발과 품질보증 활동이 동시에 이루어진다. 여기서 테스트는 요구 사항 단계에서 바로 시작됩니다. 검증 및 검증 활동이 동시에 발생합니다. 그림:검증&검증 모델-소프트웨어 테스팅 자습서
일반적인 개발 과정에서 왼쪽은 개발 활동을 보여주고 오른쪽은 테스트 활동을 보여줍니다. 개발 단계에서 검증 및 검증이 실제 개발 활동과 함께 수행된다고 말하면 잘못되어서는 안됩니다.
앞서 언급한 바와 같이,좌측 활동은 개발 활동이다. 일반적으로 우리는 개발 단계에서 어떤 테스트를 할 수 있다고 느낍니까? 그러나 이것이 개발 활동의 모든 단계에서 테스트를 수행 할 수 있음을 보여주는 이 모델의 본질입니다.
테스트 활동 또는 검증 단계는 모델의 오른쪽에서 수행됩니다.
이에 대한 통찰력을 얻었 듯이,이 소프트웨어 테스트 자습서를 통해 더 나아가 소프트웨어를 테스트 할 수있는 다른 방법이 무엇인지 살펴 보겠습니다.
소프트웨어 테스트 방법
소프트웨어 테스트 방법에는 세 가지가 있으며 다음과 같습니다:
- 블랙 박스 테스트
- 화이트 박스 테스트
- 그레이 박스 테스트
블랙 박스 테스트:테스트중인 항목의 내부 구조/설계/구현이 테스터에게 알려지지 않은 소프트웨어 테스트 방법입니다.
화이트 박스 테스트:테스트중인 항목의 내부 구조/설계/구현이 테스터에게 알려진 소프트웨어 테스트 방법입니다.
그레이 박스 테스트:시스템의 내부 기능에 대한 제한된 정보로 수행되는 테스트 기술입니다.
나는 당신이 소프트웨어 테스팅의 다른 방법에 대한 주요 포인터를 이해 바랍니다. 자,이 소프트웨어 테스트 자습서 문서에서 더 이동 하 고 소프트웨어 테스트 수준을 이해 하자.
소프트웨어 테스팅 수준
소프트웨어 테스팅의 수준은 소프트웨어/시스템의 모든 단위 또는 구성 요소를 테스트하는 프로세스입니다. 소프트웨어 테스트에 대한 동작 및 성능을 확인하는 데 도움이되는 다양한 테스트 수준이 있습니다. 이러한 테스트 수준은 누락 된 영역과 수명주기 상태 개발 간의 조정을 인식하도록 설계되었습니다. 소프트웨어 개발 라이프 사이클 모델에서는 요구 사항 수집,분석,설계,코딩 또는 실행,테스트 및 배포와 같은 특성화 된 단계가 있습니다.
이 모든 단계는 소프트웨어 테스트 수준의 과정을 거칩니다. 주로 4 개의 테스트 수준이 있고 그들은 입니다:
- 단위 테스트
- 통합 테스트
- 시스템 테스트
- 수락 테스트
기본적으로 단위 테스트 단계에서 시작하여 수락 테스트로 끝납니다.
이 소프트웨어 테스팅 자습서의 다음 섹션에서는 다음 주제에 대해 자세히 살펴보고 소프트웨어 테스팅의 다양한 문서 아티팩트가 무엇인지 설명합니다.
소프트웨어 테스팅 문서 아티팩트
테스트 케이스를 문서화하면 테스트 커버리지 및 추적 및 추적 요구 사항과 함께 필요한 테스트 노력을 쉽게 예측할 수 있습니다. 소프트웨어 테스트와 관련된 일반적으로 적용되는 문서 아티팩트는 다음과 같습니다:
- 테스트 계획
- 테스트 시나리오
- 테스트 사례
- 추적 성 매트릭스
각각에 대해 간략하게 설명하겠습니다.
- 테스트 계획:응용 프로그램 테스트를 위해 구현 될 개요 전략을 제공합니다.
- 테스트 시나리오:테스트 시나리오는 응용 프로그램을 실험할 영역을 알리는 한 줄 문으로 간주할 수 있습니다. 이 아티팩트는 처음부터 끝까지 테스트 된 전체 절차를 보장하기 위해 필요합니다.
- 테스트 케이스:테스트 케이스는 테스트중인 시스템이 요구 사항을 충족하는지 또는 올바르게 작동하는지 테스터가 결정하는 일련의 조건 또는 변수에 불과합니다. 아래에 언급 된 테스트 사례는 테스트 중에 확인 중입니다.
- 기능 테스트 사례
- 부정 오류 테스트 사례
- 논리적 테스트 사례
- 물리적 테스트 사례
- 추적 성 매트릭스:요구 사항 추적 성 매트릭스라고도합니다. 이 표에는 제품의 모델 생성 시 요구 사항을 스케치하는 표가 포함되어 있습니다. 이러한 문서화 아티팩트는 설계에서 코딩으로 이동하는 순방향 추적에 적용하거나 순방향 추적의 역방향 추적에도 구현할 수 있습니다.
이렇게 하면 소프트웨어 테스트 문서 아티팩트가 종료됩니다. 자,이 소프트웨어 테스팅 튜토리얼 문서에서 더 나아가 결함 관리가 무엇인지 알아 보겠습니다.
결함 관리 프로세스는 무엇입니까?
결함 관리는 버그를 탐지하고 수정하는 프로세스입니다. 버그는 소프트웨어 산업의 일부이기 때문에 소프트웨어 개발 과정에서 끊임없이 발생합니다. 팀 구성원은 매일 많은 양의 코드를 작성해야 하며 일반적으로 버그를 방지하는 방법에 대해 생각할 시간이 없습니다. 따라서 모든 소프트웨어 개발 프로젝트에는 결함을 감지하고 수정하는 데 도움이되는 프로세스가 필요합니다.
결함 관리 프로세스는 제품 테스트 단계에서 수행됩니다. 이를 실현하지 않고,결함 관리의 본질을 이해하기 어려울 것이다.. 일반적으로 개발자는 제품을 직접 테스트합니다. 또한 사용자 참여를 기반으로 하는 테스트 유형도 있습니다. 최종 사용자에게는 식별한 버그에 대해 보고할 수 있는 기능이 제공되는 경우가 많습니다. 그럼에도 불구하고 사용자가 모든 버그를 찾을 수 없기 때문에 이것이 가장 좋은 테스트 방법은 아닙니다.
결함 관리 프로세스는 일반적으로 네 단계를 포함한다.
- 첫 번째 단계는 결함 검출 단계
- 두 번째 단계는 버그 리포트 수립에 전념
- 세 번째 단계는 버그를 수정하는 것입니다.
- 마지막 단계에서,버그 목록이 작성
이제,의 소프트웨어 테스팅 튜토리얼 문서에서 더 이동하고 버그 라이프 사이클의 도움으로 버그 탐지 프로세스를 이해하자.
버그 수명주기
결함 수명주기는 결함이 전체 수명 동안 다양한 단계를 거치는 프로세스입니다. 그것은 결함이 발견 될 때 시작하고 결함이 재현 아니에요 보장 한 후,폐쇄 될 때 끝납니다. 결함 수명 주기는 테스트 중에 발견된 버그와 관련이 있습니다.
버그 또는 결함 수명 주기는 아래 그림과 같이 단계를 포함합니다:
- 새로운: 이 단계에서 결함이 처음으로 기록되고 게시되면 해당 상태가 새 것으로 지정됩니다.
- 할당:테스터가 버그를 게시한 후 테스터의 리드는 버그가 정품임을 승인하고 해당 개발자와 개발자 팀에 버그를 할당합니다. 그것은 할당 된 상태로 주어진 상태입니다.
- 열기:이 상태에서 개발자가 결함 수정 분석 및 작업을 시작했습니다.
- 고정:개발자가 필요한 코드를 변경하고 변경 사항을 확인으로 그/그녀는’고정’으로 버그 상태를 만들 수 있으며,버그가 테스트 팀에 전달됩니다.
- 테스트:이 단계에서 테스터는 결함이 수정되었는지 여부를 확인하기 위해 개발자가 다시 제공 한 변경된 코드를 테스트합니다.
- 확인:여기에서 테스터는 개발자가 수정 한 후 버그를 다시 테스트합니다. 소프트웨어에 버그가 없으면 버그가 수정되었음을 승인하고 상태를”확인됨”으로 변경합니다.
- 다시 열기:개발자가 버그를 수정 한 후에도 버그가 여전히 존재하는 경우 테스터가 상태를”다시 열기”로 변경합니다. 이 상태에서 버그는 다시 한 번 수명주기를 거칩니다.
- 닫힘:버그가 수정되는 즉시 테스터에 의해 테스트됩니다. 테스터가 소프트웨어에 버그가 더 이상 존재하지 않는다고 느끼면 버그의 상태를”닫힘”으로 변경합니다. 버그가 수정,테스트 및 승인되었음을 의미합니다.
- 중복:버그 수명 주기에서 버그가 두 번 반복되거나 두 버그가 동일한 버그 개념을 언급하면 하나의 버그 상태가”중복”으로 변경됩니다.
- 거부됨:개발자가 버그가 정품이 아니라고 느끼는 경우 버그를 거부합니다. 그런 다음 버그 상태가”거부됨”으로 변경됩니다.
- 지연:버그가 지연 상태로 변경되면 버그가 다음 릴리스에서 수정 될 것으로 예상됩니다.
이것은 버그 수명주기 및 결함 관리 프로세스에 관한 것이 었습니다. 이제,수동 테스트와 문제가 무엇인지 보자.
수동 테스트의 과제
품질보증 테스터가 수동으로 응용 프로그램을 테스트하는 것을 수동 테스트라고 합니다. 여기서 모든 테스트는 다른 데이터 세트를 사용하여 모든 환경에서 수동으로 수행되어야하며 모든 트랜잭션의 성공/실패율을 기록해야합니다.
위의 그림에서 수동으로 기록 된 트랜잭션을 확인하는 사람을 볼 수 있습니다. 당신은 쉽게 때문에 수동 노력의 피로,지루함,작업 지연,실수와 오류가 발생할 수 있습니다 직면하고있는 문제를 통지 할 수 있습니다. 이 자동화 테스트의 출현을 주도.
이제 소프트웨어 테스팅 튜토리얼 기사의 마지막 주제를 살펴보고 자동화 테스트가 수동 테스트를 어떻게 능가하는지 살펴 보겠습니다.
자동화 테스트 대 수동 테스트
자동화 테스트는 매번 수동 테스트를 극복합니다. 왜? 이 초고속이기 때문에,오류가 발생하기 쉬운하지 인적 자원에 매우 적은 투자를 필요로 테스트를 자주 실행이 가능하며,회귀 테스트도 기능 테스트를 지원합니다.
예를 들어 이것을 이해합시다. 로그인 페이지가 있고 모든 로그인 시도가 성공적인지 확인해야한다고 말하면 모든 트랜잭션/로그인 시도가 성공인지 아닌지를 검증 할 코드 조각을 작성하는 것이 정말 쉽습니다(자동화 된 테스트 케이스 실행).
이러한 모든 테스트는 서로 다른 환경과 웹 브라우저에서 테스트되는 방식으로 구성할 수 있습니다. 다만,또한 당신은 하루 동안 특정 시간을 예약하여,결과 파일의 생성을 자동화 할 수 있습니다. 그럼 당신은 또한 그 결과와 무엇을하지에 따라 보고서의 생성을 자동화 할 수 있습니다.
여기서 중요한 점은 자동화 테스트가 테스터의 작업을 훨씬 단순하게 만든다는 것입니다. 동일한 테스터가 작동하는 더 편안한 환경을 보여주는 위의 이미지를 참조하십시오. 자동화 테스트 및 널리 사용되는 자동화 테스트 도구 셀레늄에 대해 더 알고 싶다면이 셀레늄 자습서를 참조 할 수 있습니다.
이것은 소프트웨어 테스트 분야에서 자동화 테스트가 어떻게 발전하고 있는지에 관한 것이 었습니다. 그것은 소프트웨어 테스트 튜토리얼에 문서의 끝에 우리를 제공합니다. 나는 당신이 정보를 발견하고 당신의 지식에 가치를 추가하는 데 도움이되기를 바랍니다.
이”소프트웨어 테스팅 튜토리얼”이 관련성이 있다고 판단되면 전 세계에 250,000 명 이상의 만족스러운 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사 인 에두레카의 라이브 온라인 셀레늄 인증 교육을 확인하십시오.