일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Testing
- 테스트케이스
- 자동화
- Test Case
- ISTQB
- risk-based testing
- testing method
- testcase
- seleium
- 테스트
- 품질
- RBT
- test
- SQA
- 위험 기반 테스트
- 셀레니움
- 테스트 설계 기법에 따른 분류
- maintainability test
- 테스트 케이스
- 파이썬
- Software life cycle model
- Python
- regression test
- csts
- 비기능테스트
- selenium
- 애자일
- 유지보수성 테스트
- agile
- QA
Archives
- Today
- Total
Study_Note
testing method - regression test 본문
728x90
반응형
테스팅 방법 - 리그레션 테스트 (testing method - regression test)
유지보수 단계에서는 다양한 이유로 소프트웨어 변경이 발생합니다. 사용자가 소프트웨어를 사용하다가 결함을 발견하거나, 새로운 기능 추가, 성능 향상, 새로운 환경 대응을 위한 수정 등이 그 이유입니다. 이렇게 소프트웨어가 변경되면 리그레션 테스트(regression test)가 필요합니다. 리그레션 테스트는 변경 후에 수행되며, 해당 변경으로 인해 의도치 않은 결함이 발생하지 않았는지 확인하고, 시스템이 여전히 기본 요구사항을 충족하는지 검증합니다.
[사용 전략]
리그레션 테스트에는 여러 전략이 적용될 수 있습니다. 각 전략은 다양한 상황과 요구에 따라 선택됩니다.
- Retest-All 전략
- 이 전략은 모든 기존 테스트 케이스를 다시 실행하는 방법입니다.
- 소프트웨어 변경 후에 변경된 부분 뿐만 아니라 전체 시스템을 대상으로 테스트를 수행합니다.
- 이는 변경이 발생한 부분 이외의 다른 부분에도 영향을 미칠 수 있는 상황에서 유용합니다.
- 선택적 리그레션 테스트
- 이 전략은 변경된 부분과 그 주변 영역에 초점을 맞춘 테스트를 수행합니다.
- 변경된 부분 주변의 코드나 관련된 기능을 중심으로 테스트를 실행하여 변경으로 인한 영향을 최소화하고자 합니다.
- 주로 변경된 기능의 영향을 테스트하는 경우에 유용합니다.
- 테스트 최소화 전략
- 이 전략은 변경된 부분에 집중하여 테스트를 최소화하는 방법입니다.
- 변경된 부분과 관련된 최소한의 테스트 케이스를 실행하여 리소스를 절약하고 효율성을 높입니다.
- 변경된 코드와 관련된 테스트 케이스를 식별하고 실행함으로써 테스트 범위를 최적화합니다.
- 테스트 우선 순위화 전략
- 이 전략은 변경된 부분의 중요도에 따라 테스트를 우선순위에 따라 실행하는 방법입니다.
- 중요한 기능이나 변경된 부분에 먼저 테스트를 집중하여 신속하고 효과적으로 문제를 발견하고 해결합니다.
- 리소스를 효율적으로 활용하면서도 테스트의 품질을 유지하는 데 도움이 됩니다.
이러한 전략들은 각각의 상황과 요구에 따라 적합한 전략을 선택하여 리그레션 테스트를 수행하는 데 도움을 줍니다.
소프트웨어가 변경되면 컴포넌트 테스트, 통합 테스트, 시스템 테스트의 순서로 각 레벨의 리그레션 테스트 를 수행합니다. 이것은 변경된 소프트웨어의 안정성과 기능을 보장하기 위한 중요한 단계입니다.
[예시]
리그레션 테스트는 소프트웨어에 변경이 발생한 후에 수행되는 테스트입니다. 이는 소프트웨어의 변경이나 수정으로 인해 새로운 버그가 도입되었는지, 기존의 기능이 올바르게 작동하는지 확인하기 위해 수행됩니다. 여기에는 몇 가지 예시가 있습니다:
- 버그 수정 후 리그레션 테스트
개발자가 이전에 발견된 버그를 수정했다고 가정해 봅시다. 이제 리그레션 테스트를 사용하여 해당 버그가 수정되었으며 소프트웨어의 다른 부분에 새로운 버그가 도입되지 않았는지 확인할 수 있습니다. - 기능 추가 후 리그레션 테스트
새로운 기능이 소프트웨어에 추가되었다면, 해당 기능의 동작이 예상대로 작동하는지 확인하기 위해 리그레션 테스트를 수행할 수 있습니다. 동시에 기존의 다른 기능이 새로운 기능 추가로 인해 영향을 받지 않는지도 확인할 수 있습니다. - 환경 변경 후 리그레션 테스트
소프트웨어를 실행하는 환경이 변경되었을 때도 리그레션 테스트가 필요합니다. 예를 들어, 운영 체제나 라이브러리의 업그레이드, 새로운 하드웨어 추가 등이 있을 수 있습니다. 이러한 변경 사항이 소프트웨어의 기능에 영향을 미치는지 확인하기 위해 리그레션 테스트를 수행할 수 있습니다. - 코드 리팩토링 후 리그레션 테스트
코드 리팩토링은 코드의 구조를 개선하고 중복을 제거하여 유지보수성을 향상시키는 작업입니다. 하지만 이러한 변경은 종종 예상치 못한 부작용을 일으킬 수 있습니다. 따라서 코드 리팩토링 후에는 리그레션 테스트를 수행하여 시스템의 기능을 확실하게 보장할 수 있습니다.
이러한 예시들은 리그레션 테스트의 필요성과 다양한 상황에서의 활용을 보여줍니다. 이를 통해 소프트웨어의 품질을 유지하고 변경 사항으로 인한 부작용을 최소화할 수 있습니다.
'CSTS' 카테고리의 다른 글
testing method - model based testing (0) | 2024.05.16 |
---|---|
testing method - risk based testing (0) | 2024.03.14 |
testing method - software life cycle model & testing (0) | 2024.03.11 |
classification according to test design techniques - dynamic testing (0) | 2024.02.13 |
classification according to test design techniques - static testing (1) | 2024.02.13 |