Study_Note

testing, debugging, re_testing 본문

CSTS

testing, debugging, re_testing

12월7일생 2023. 12. 4. 17:25
728x90

반응형

테스팅 디버깅, 재검증(테스팅)
(testing, debugging, re_testing)

 

Testting

  • 목적: 소프트웨어의 품질을 평가하고 문제를 식별하기 위해 시스템을 실행하는 과정.
  • 활동: 소프트웨어를 실행하고, 입력 데이터를 제공하며, 예상된 출력과 실제 출력을 비교함으로써 소프트웨어의 동작을 확인함.
  • 종류: 기능 테스트, 성능 테스트, 사용자 인터페이스 테스트 등 다양한 종류의 테스트가 있음.

테스팅은 소프트웨어의 동작과 요구사항 간의 일치 여부를 확인하는 과정입니다.

특히, 동적 테스트는 결함의 발견을 목적으로 프로그램을 실행하며, 이때 발생한 소프트웨어 장애를 통해 내부에 결함이 있을 것으로 가정합니다.프로그램이 예상한 결과와 다르게 동작할 때, 즉, 장애가 발생했을 때, 테스팅은 해당 문제를 확인하고 소프트웨어 내부에 결함이 있다고 추정합니다.이를 통해 간접적으로 소프트웨어의 결함 여부를 판단하게 됩니다.테스팅의 결과는 주로 결함을 검출한 테스트 케이스와 실행된 테스트 환경입니다.테스팅은 특정 환경에서 특정 입력값을 사용했을 때 예상되는 결과와 실제 출력 결과 등을 기록하지만, 이 결함이 어떤 모듈에서 발생했는지, 그리고 이를 해결하기 위해 소스코드를 어떻게 수정해야 하는지에 대해서는 관여하지 않습니다.

요약적으로 테스팅은 주로 소프트웨어의 외부 동작에 초점을 맞추며, 발생한 문제를 확인하고 기록함으로써 소프트웨어의 품질을 향상시키는 역할을 합니다. 결함의 수정이나 소스코드 수정은 이후 디버깅 단계에서 이루어지게 됩니다.

 

 

Debugging

  • 목적: 테스트 중에 발견된 버그(오류)를 찾아서 수정하는 과정.
  • 활동: 버그의 원인을 찾아내고, 수정 후에 다시 테스트하여 문제가 해결되었는지 확인함.
  • 도구: 디버거(debugger)를 사용하여 코드를 실행하고, 변수의 값이나 프로그램의 흐름을 추적하여 오류를 해결함.

디버깅은 주로 테스팅을 통해 확인된 결함의 존재 여부를 확인하고, 결함이 위치한 곳을 파악하며 이를 제거하는 과정입니다. 테스팅을 통해 특정 입력값에 대한 결함이 발견되면, 디버깅에서는 해당 결함과 연관된 소스코드의 위치를 찾아내야 합니다.

보통 결함을 검출한 입력값으로 소프트웨어를 실행할 때, 그 실행 중에 결함이 발생한 소스 코드에 해당 결함이 존재합니다. 따라서 디버깅은 이러한 소스 코드 내에서 결함의 위치를 정확히 찾아내는 작업을 수행합니다.결함의 위치를 찾으면, 이를 제거하기 위해 소스코드를 수정해야 합니다.이 작업은 종종 단순한 철자 오류 수정에서부터, 정확하지 않은 알고리즘을 수정하거나 누락된 기능을 추가하는 등 다양한 수준의 작업을 포함합니다.디버깅은 소프트웨어의 품질을 향상시키는 중요한 단계로, 발견된 결함을 신속하게 해결하여 안정적이고 신뢰할 수 있는 소프트웨어를 제공하는 데 기여합니다.

 

Re_Testing

  • 목적: 버그가 수정된 후에 해당 버그가 해결되었는지 확인하기 위한 테스트.
  • 활동: 수정된 코드에 대해 이전에 발견된 테스트 케이스를 다시 실행하여 버그가 여전히 존재하는지 여부를 확인함.
  • 중요성: 버그 수정 후에 해당 기능만을 다시 테스트함으로써 새로운 버그가 추가되지 않았는지 확인함.

개발자가 코드를 수정하여 결함을 제거한 후에는 실제로 그 변경이 효과적으로 이루어졌는지 확인할 필요가 있습니다. 이를 위해서는 초기에 결함이 검출된 테스트 케이스를 활용하여 테스팅을 다시 수행해야 하는데, 이 과정을 재테스팅(Re-Testing)이라고 합니다. 즉, 재테스팅은 개발자가 소스 코드를 수정하고 나서 해당 수정이 기대한 대로 작동하는지를 검증하는 과정입니다. 이를 통해 이전에 발견된 결함이 실제로 제거되었는지를 확인하고, 새로운 결함이 추가되지 않았는지를 보장합니다.간단하게 말하면, 재테스팅은 개발자가 코드를 수정한 후에 해당 수정이 올바르게 이루어져 결함이 해결되었는지를 확인하는 단계로 이해할 수 있습니다.

'CSTS' 카테고리의 다른 글

test principle  (0) 2023.12.08
the evolutionary process of testing  (1) 2023.12.06
type of defects  (1) 2023.10.11
defects by development stage  (0) 2023.10.11
concept of error, defect, failure  (0) 2023.10.04