QA/ISTQB

1.2 - What is testing? (테스팅이란 무엇인가?)

c29130811 2019. 2. 16. 15:54

Terms 

Debugging, requirement, review, test case, testing, test objective..


Background

A common perception of testing is that it only consists of running tests, i.e executing the software, This is part of testing, but not all of the testing activities.


Test activities exist before and after test execution : activities such as planning and control. choosing test conditions, designing test cases and checking result, evaluating exit criteria, reporting on the testing  process and system under test, and finalizing or closure (e.g after a test phase has been completed.) Testing Also includes reviewing of documents (including source code) and static analysis.


Both dynamic testing and static testing can be used as a means for achieving similar objectives, and will provide information in order to improve both the system to be tested, and the development and testing processes. 


There can be different test objectives:

  • finding defeats;
  • gaining confidence about the level of quality and providing information;
  • preventing defects;
the thought process of designing tests early in the life cycle (verifying the test basis via test design) can help to prevents defects from being introduced into code. Reviews of documents (e.g. requirements) also help to prevent defeats appearing in the code.

Different viewpoints in testing take different objectives into account. For example, in development testing (e,g component, integration and system testing), the main objective may be to cause as many failures as possible so that defects in the software and identified and can be fixed. In acceptance testing, the main objective may be to confirm that the system works as expected, to gain confidence that it has met the requirements. In some cases the main objective of testing may be to assess the quality of the software (with no intention of defects), to give information to stakeholders of the risk of releasing the system at a given time. Maintenance testing often includes testing that no new defects have been introduced during development of the changes. During operational testing the main objective may be to assess characteristics such as reliability or availability.

Debugging and testing are different. Testing can show failures that are caused by defects. Debugging is the development activity that identifies the cause of a defect, repairs the code and checks that the defect has been fixed correctly. Subsequent confirmation testing by a tester ensures that the fix does indeed resolve the failure. The responsibility for each activity is very different, i. e. testes test and developments debugs.)

The process of testing and its activities is explained in Section 1.4.




용어

디버깅, 요구사항, 리뷰, 테스트 케이스, 테스팅, 테스트 목적


배경

일반적으로 테스팅은 소프트웨어를 실행하며 수행하는 것으로 인식한다. 그러나 그것은 테스팅의 일부분이며, 테스트 활동의 전부가 아니다.

테스팅 활동은 테스트를 하기 전에도 존재한다. 테스트 계획과 제어, 테스트 조건의 선택, 테스트 케이스의 설계 그리고 결과 체크, 실행 및 완료 조건, 테스팅 프로세스와 테스트 중인 시스템에 대한 테스트 결과 보고, 그리고 마무리 또는 종료(예, 테스트 단계가 완료된 후) 테스팅은 문서의 리뷰 (소스 코드 포함)과 정 분석에 의한 테스팅도 포함된다.

동적 테스팅과 정적 테스팅 둘다 비슷한 목적을 달성하기 위해 사용될 수 있다. 그리고 시스템 개선과 개발 및 테스팅의 프로세스 개선하기 위한 정보를 제공한다.

다양한 테스팅 목적이 있다.
  • 결함 발견
  • 품질 수준에 대한 자신감 획득과 정보 제공
  • 결함 예방

개발 초기에 테스트를 설계 하는 방법(예. 테스트 설계를 통하여 테스트 베이시스 검토)을 통하여 소스코드에 도입될 수 있는 결함을 예방할 수 있다. 문서의 리뷰 또한 코드에서 발생될 수 있는 결함을 방지할 수 있다.


각기 다른 테스팅 관점은 서로 다른 테스트의 목적을 갖는다. 예를 들어, 계발 과정의 테스팅 (예, 컴포넌트 테스팅(단위 테스팅), 통합 그리고 시스템 테스팅)의 주요 목적은 소프트 웨어 결함을 찾아내고 수정하기 위해 가능한한 많은 장애를 발생시키는 것이다. 인수 테스팅의 주요 목적은 기대한대로 동작하는 것을 확인하는 것으로,요구 사항에 맞는지 자신감을 얻는 것이다. 경우에 따라서 테스팅의 주요 목적이 소프트웨어의 품질을 평가하는 것으로, 이해관계자들에게  특정 시간에 시스템이 출시가 가능한지 리스크 정보를 제공하는 것이다.

유지보수 테스팅은 종종 개발 환경 변경에서 새로운 결함이 유입 되었는지 확인하는 테스팅을 포함한다. 운영 테스팅의 주요 목적은 신뢰성 또는 사용성에 대한 시스템의 특성을 테스팅 한다. 


디버깅과 테스팅은 차이점이 있다. 테스팅은 결함에 의해 장애를 드러내고, 디버깅은 개발 활동에서 결함의 원인을 확인하는 것으로, 코드를 수정 후 수정 되었는지 확인한다. 그 다음 결함이 정말로 수정 되었는지, 확인 테스팅을 한다.각 활동에 대한 의무는 다르다. (예, 테스트는 테스트를 하며, 개발자는 디버깅을 수행)


테스팅의 절차와 활동은 1.4장에 설명되어 있다.



728x90