๐ ํต์ฌ ์ฉ์ด ์ ๋ฆฌ โ
ISTQB F/L Syllabus โ
๐งฉ ์ 1 ์ฅ ํ ์คํ ์ ๊ธฐ์ด(Fundamentals of Testing)
- ์ปค๋ฒ๋ฆฌ์ง (coverage): ํน์ ์ปค๋ฒ๋ฆฌ์ง ํญ๋ชฉ(์๊ตฌ์ฌํญ, ์ฝ๋ ๊ตฌ๋ฌธ ๋ฑ)์ด ํ ์คํธ์ ์ํด ๋ค๋ค์ง ์ ๋. ๋ฐฑ๋ถ์จ๋ก ํ์
- ๋๋ฒ๊น (debugging): ์ฅ์ ์ ์์ธ(๊ฒฐํจ)์ ์ฐพ๊ณ , ๋ถ์ํ๊ณ , ์ ๊ฑฐํ๋ ๊ฐ๋ฐ ํ๋. ํ ์คํ ๊ณผ๋ ๋ณ๊ฐ์ ํ๋์ (ํ ์คํ ์ ๊ฒฐํจ์ ์ฐพ๊ณ , ๋๋ฒ๊น ์ ๊ฒฐํจ์ ๊ณ ์นจ)
- ๊ฒฐํจ (defect): ์์ ์ฐ์ถ๋ฌผ์ ์กด์ฌํ๋ ๊ฒฐ์ ์ด๋ ํ . ์คํ๋๋ฉด ์ฅ์ ๋ฅผ ์ ๋ฐํ ์ ์์. '๋ฒ๊ทธ'๋ผ๊ณ ๋ ํจ
- ์ค๋ฅ (error): ์ฌ๋์ด ์ ์ง๋ฅด๋ ์ค์. ์๊ฐ ์๋ฐ, ๋ณต์ก์ฑ, ํผ๋ก, ํ๋ จ ๋ถ์กฑ ๋ฑ์ผ๋ก ๋ฐ์ํ๋ฉฐ, ๊ฒฐํจ์ผ๋ก ์ด์ด์ง
- ์ฅ์ (failure): ๊ฒฐํจ์ด ์คํ๋์ด ์ค์ ๋ก ์์คํ ์ด ์๊ตฌ๋ ๊ธฐ๋ฅ์ ์ํํ์ง ๋ชปํ๊ฑฐ๋, ์ํํ์ง ์์์ผ ํ ๋์์ ํ๋ ๊ฒ
- ํ์ง (quality): ์ํํธ์จ์ด ์ฐ์ถ๋ฌผ์ด ๋ช ์๋/์๋ฌต์ ์ธ ์๊ตฌ์ฌํญ, ํ์, ๊ธฐ๋๋ฅผ ์ถฉ์กฑํ๋ ์ ๋
- ํ์ง ๋ณด์ฆ (QA, Quality Assurance): ํ๋ก์ธ์ค ์ค์ฌ์ ์๋ฐฉ์ ์ ๊ทผ๋ฒ. ์ข์ ํ๋ก์ธ์ค๋ฅผ ์ค์ํ๋ฉด ์ข์ ์ ํ์ด ๋์จ๋ค๋ ๊ฐ์ ํ์ ํ๋ก์ธ์ค ๊ตฌํ/๊ฐ์ ์ ์ด์ (ํ ์คํ =๊ต์ ์ , QA=์๋ฐฉ์ โ ๋์ ๋ค๋ฆ)
- ๊ทผ๋ณธ ์์ธ (root cause): ์ค๋ฅ๋ ๊ฒฐํจ์ด ๋ฐ์ํ๊ฒ ๋ ๊ทผ๋ณธ์ ์ธ ์ด์ . ๊ทผ๋ณธ ์์ธ ๋ถ์์ ํตํด ์๋ณํ๋ฉฐ, ์ด๋ฅผ ์ ๊ฑฐํ๋ฉด ์ ์ฌ ๊ฒฐํจ์ ์ฌ๋ฐ์ ๋ง์ ์ ์์
- ํ ์คํธ ๋ถ์ (test analysis): ํ ์คํธ ๋ฒ ์ด์์ค๋ฅผ ๋ถ์ํด ํ ์คํธ ์ปจ๋์ ์ ์๋ณยท์ ์ํ๋ ํ๋. "๋ฌด์์ ํ ์คํธํ ๊ฒ์ธ๊ฐ?"์ ๋ตํจ
- ํ ์คํธ ๋ฒ ์ด์์ค (test basis): ํ ์คํธ ์ผ์ด์ค ๋์ถ์ ๊ทผ๊ฑฐ๊ฐ ๋๋ ๋ชจ๋ ์ง์ยท์๋ฃ(์๊ตฌ์ฌํญ, ์ค๊ณ์, ์ฌ์ฉ์ ์คํ ๋ฆฌ ๋ฑ)
- ํ ์คํธ ์ผ์ด์ค (test case): ํน์ ๋ชฉํ๋ ํ ์คํธ ์ปจ๋์ ์ ๊ฒ์ฆํ๊ธฐ ์ํด ์ค๊ณ๋ ์ฌ์ ์กฐ๊ฑด, ์ ๋ ฅ๊ฐ, ์ก์ , ๊ธฐ๋๊ฒฐ๊ณผ, ์ฌํ์กฐ๊ฑด์ ์งํฉ
- ํ ์คํธ ์๋ฃ (test completion): ํ๋ก์ ํธ ๋ง์ผ์คํค์์ ์ํ๋๋ ํ๋. ํ ์คํธ์จ์ด ์ ๋ฆฌ, ๊ฒฐํจ ์ฒ๋ฆฌ, ์๋ฃ ๋ณด๊ณ ์ ์์ฑ ๋ฑ์ ํฌํจ
- ํ ์คํธ ์ปจ๋์ (test condition): ํ ์คํธ ๋ฒ ์ด์์ค๋ก๋ถํฐ ๋์ถ๋, ํ ์คํธ๋ก ๊ฒ์ฆ ๊ฐ๋ฅํ ํญ๋ชฉ์ด๋ ์ด๋ฒคํธ(์: ๊ธฐ๋ฅ, ํธ๋์ญ์ , ํ์ง ํน์ฑ)
- ํ ์คํธ ์ ์ด (test control): ํ ์คํธ ๋ชฉ์ ๋ฌ์ฑ์ ์ํด ํ์ํ ์กฐ์น๋ฅผ ์ทจํ๋ ํ๋ (๋ชจ๋ํฐ๋ง ๊ฒฐ๊ณผ์ ๋ฐ๋ฅธ ๋์)
- ํ ์คํธ ๋ฐ์ดํฐ (test data): ํ ์คํธ ์คํ์ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ
- ํ ์คํธ ์ค๊ณ (test design): ํ ์คํธ ์ปจ๋์ ์ ํ ์คํธ ์ผ์ด์ค์ ๊ธฐํ ํ ์คํธ์จ์ด๋ก ๊ตฌ์ฒดํํ๋ ํ๋. "์ด๋ป๊ฒ ํ ์คํธํ ๊ฒ์ธ๊ฐ?"์ ๋ตํจ
- ํ ์คํธ ์คํ (test execution): ํ ์คํธ ์ ์ฐจ์ ๋ฐ๋ผ ์ค์ ๋ก ํ ์คํธ๋ฅผ ์ํํ๋ ๊ฒ (ํ ์คํธ ๋ฐ)
- ํ ์คํธ ๊ตฌํ (test implementation): ํ ์คํธ ์คํ์ ํ์ํ ํ ์คํธ์จ์ด(์คํฌ๋ฆฝํธ, ๋ฐ์ดํฐ, ํ๊ฒฝ ๋ฑ)๋ฅผ ๋ง๋ค๊ณ ์ค๋นํ๋ ํ๋
- ํ ์คํธ ๋ชจ๋ํฐ๋ง (test monitoring): ํ ์คํธ ํ๋์ ์ง์์ ์ผ๋ก ์ ๊ฒํ๊ณ ์ค์ ์งํ ์ํฉ์ ๊ณํ๊ณผ ๋น๊ตํ๋ ํ๋
- ํ ์คํธ ๋์ (test object): ํ ์คํธ์ ๋์์ด ๋๋ ์์ ์ฐ์ถ๋ฌผ(์ปดํฌ๋ํธ, ์์คํ , ๋ฌธ์ ๋ฑ)
- ํ ์คํธ ๋ชฉ์ (test objective): ํ ์คํธ๋ฅผ ์ค๊ณํ๊ณ ์คํํ๋ ์ด์ (์: ๊ฒฐํจ ์๋ณ, ๋ฆฌ์คํฌ ์ํ, ์๊ตฌ์ฌํญ ์ถฉ์กฑ ํ์ธ ๋ฑ)
- ํ ์คํธ ๊ณํ (test planning): ํ ์คํธ ๋ชฉ์ ์ ์ ์ํ๊ณ ๊ทธ๊ฒ์ ๋ฌ์ฑํ ์ ๊ทผ๋ฒ์ ์ ํํ๋ ํ๋
- ํ ์คํธ ์ ์ฐจ (test procedure): ํ๋ ์ด์์ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์คํ ์์๋๋ก ๋ฌถ์ด๋์ ๊ฒ
- ํ ์คํธ ๊ฒฐ๊ณผ (test result): ํ ์คํธ ์คํ์ ๊ฒฐ๊ณผ๋ฌผ(์ค์ ๊ฒฐ๊ณผ์ ๊ธฐ๋ ๊ฒฐ๊ณผ์ ๋น๊ต ๋ฑ)
- ํ ์คํ (testing): ๊ฒฐํจ์ ์๋ณํ๊ณ ์ํํธ์จ์ด ์ฐ์ถ๋ฌผ์ ํ์ง์ ํ๊ฐํ๋ ์ผ๋ จ์ ํ๋. ๋์ ยท์ ์ ํ ์คํ ๋ชจ๋ ํฌํจ
- ํ ์คํธ์จ์ด (testware): ํ ์คํธ ํ๋์ ํตํด ๋ง๋ค์ด์ง๋ ๋ชจ๋ ์ฐ์ถ๋ฌผ(ํ ์คํธ ๊ณํ์, ์ผ์ด์ค, ์คํฌ๋ฆฝํธ, ๋ฐ์ดํฐ, ๋ณด๊ณ ์ ๋ฑ)
- ์ถ์ ์ฑ (traceability): ํ ์คํธ ๋ฒ ์ด์์ค์ ์์์ ๊ด๋ จ ํ ์คํธ์จ์ด, ๊ฒฐ๊ณผ ๊ฐ์ ์ฐ๊ด ๊ด๊ณ๋ฅผ ํ์ ํ๊ณ ์ ์งํ๋ ๊ฒ
- ๋ฐธ๋ฆฌ๋ฐ์ด์ (validation): ์์คํ ์ด ์ด์ ํ๊ฒฝ์์ ์ฌ์ฉ์/์ดํด๊ด๊ณ์๊ฐ ์ค์ ๋ก ํ์๋ก ํ๋ ๊ฒ์ ์ถฉ์กฑํ๋์ง ํ์ธํ๋ ๊ฒ (์ฌ๋ฐ๋ฅธ ์์คํ ์ ๋ง๋ค์๋๊ฐ?)
- ๋ฒ ๋ฆฌํผ์ผ์ด์ (verification): ์์คํ ์ด ๋ช ์๋ ์๊ตฌ์ฌํญ์ ์ถฉ์กฑํ๋์ง ํ์ธํ๋ ๊ฒ (์์คํ ์ ์ฌ๋ฐ๋ฅด๊ฒ ๋ง๋ค์๋๊ฐ?)
Root Cause โ Error โ Defect โ Failure
- Error = ์ฌ๋์ ์ค์
- Defect = ์ฐ์ถ๋ฌผ์ ์๊ธด ๊ฒฐํจ
- Failure = ์คํ ์ ๋ํ๋ ์๋ชป๋ ๋์
Test Analysis โ Test Design โ Test Implementation
- Analysis = ๋ฌด์์ ํ ์คํธ?
- Design = ์ด๋ป๊ฒ ํ ์คํธ?
- Implementation = ์คํํ ์ ์๊ฒ ์ค๋น
Monitoring โ Control
- Monitoring = ๊ณํ ๋๋น ์งํ ์ํฉ ํ์ธ
- Control = ํ์ํ ์กฐ์น ์ํ
Verification โ Validation
- Verification = ์๊ตฌ์ฌํญ๋๋ก ๋ง๋ค์๋?
- Validation = ์ค์ ์ฌ์ฉ์๊ฐ ์ํ๋ ๊ฑธ ๋ง๋ค์๋?
๐งฉ ์ 2 ์ฅ ์ํํธ์จ์ด ๊ฐ๋ฐ์๋ช ์ฃผ๊ธฐ(SDLC)์ ํ ์คํ
- ์ธ์ ํ ์คํ (acceptance testing): ๋ฐธ๋ฆฌ๋ฐ์ด์ ๊ณผ ๋ฐฐํฌ ์ค๋น, ์ฆ ์์คํ ์ด ์ฌ์ฉ์์ ๋น์ฆ๋์ค ์๊ตฌ๋ฅผ ์ถฉ์กฑํ๋์ง ํ์ธํ๋ ํ ์คํธ ๋ ๋ฒจ. ์ค์ ์ฌ์ฉ์๊ฐ ์ํํ๋ ๊ฒ์ด ์ด์์
- ๋ธ๋๋ฐ์ค ํ ์คํ (black-box testing): ๋ช ์ธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, ํ ์คํธ ๋์์ ๋ด๋ถ ๊ตฌ์กฐ์ ๊ด๋ จ ์์ด ๋ฌธ์๋ก๋ถํฐ ํ ์คํธ๋ฅผ ๋์ถํ๋ ํ ์คํธ ์ ํ
- ์ปดํฌ๋ํธ ํตํฉ ํ ์คํ (component integration testing): ์ปดํฌ๋ํธ ๊ฐ์ ์ธํฐํ์ด์ค์ ์ํธ์์ฉ์ ํ ์คํธํ๋ ๋ฐ ์ค์ ์ ๋ ํ ์คํธ ๋ ๋ฒจ. ๋จ์ ํตํฉ ํ ์คํ ์ด๋ผ๊ณ ๋ ํจ
- ์ปดํฌ๋ํธ ํ ์คํ (component testing): ์ปดํฌ๋ํธ๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ํ ์คํธํ๋ ๋ฐ ์ค์ ์ ๋ ํ ์คํธ ๋ ๋ฒจ. ๋จ์ ํ ์คํ ์ด๋ผ๊ณ ๋ ํ๋ฉฐ, ๋ณดํต ๊ฐ๋ฐ์๊ฐ ์ํ
- ํ์ธ ํ ์คํ (confirmation testing): ์๋ ๊ฒฐํจ์ด ์ฑ๊ณต์ ์ผ๋ก ์์ ๋๋์ง ํ์ธํ๋ ํ ์คํธ
- ๊ธฐ๋ฅ ํ ์คํ (functional testing): ์ปดํฌ๋ํธ๋ ์์คํ ์ด ์ํํด์ผ ํ๋ ๊ธฐ๋ฅ(๋ฌด์์ ํด์ผ ํ๋์ง)์ ํ๊ฐํ๋ ํ ์คํธ ์ ํ
- ํตํฉ ํ ์คํ (integration testing): ์ปดํฌ๋ํธ ๊ฐ ๋๋ ์์คํ ๊ฐ์ ์ธํฐํ์ด์ค์ ์ํธ์์ฉ์ ํ ์คํธํ๋ ๊ฒ
- ์ ์ง๋ณด์ ํ ์คํ (maintenance testing): ์ด์ ์ค์ธ ์์คํ ์ ์์ (๊ฒฐํจ ์์ , ๊ฐ์ , ํ๊ฒฝ ๋ณํ ๋์ ๋ฑ)ํ์ ๋ ์ํํ๋ ํ ์คํ
- ๋น๊ธฐ๋ฅ ํ ์คํ (non-functional testing): ์ปดํฌ๋ํธ๋ ์์คํ ์ ๊ธฐ๋ฅ ์ด์ธ์ ์์ฑ(์ฑ๋ฅ, ์ฌ์ฉ์ฑ, ์ ๋ขฐ์ฑ ๋ฑ "์ผ๋ง๋ ์ ๋์ํ๋์ง")์ ํ๊ฐํ๋ ํ ์คํธ ์ ํ
- ๋ฆฌ๊ทธ๋ ์ ํ ์คํ (regression testing): ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๊ธฐ์กด ๊ธฐ๋ฅ์ ๋ถ์ ์ ์ธ ์ํฅ์ด ์์๋์ง ํ์ธํ๋ ํ ์คํธ
- ์ํํธ ๋ ํํธ (shift left): ํ ์คํธ๋ฅผ ์ํํธ์จ์ด ๊ฐ๋ฐ์๋ช ์ฃผ๊ธฐ ์ด๊ธฐ์ ๋ ์ผ์ฐ ์ํํ๋ ์ ๊ทผ๋ฒ
- ์์คํ ํตํฉ ํ ์คํ (system integration testing): ํ ์คํธ ๋์ ์์คํ ๊ณผ ๋ค๋ฅธ ์์คํ ๋๋ ์ธ๋ถ ์๋น์ค ๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ํ ์คํธํ๋ ๋ฐ ์ค์ ์ ๋ ํ ์คํธ ๋ ๋ฒจ
- ์์คํ ํ ์คํ (system testing): ์ ์ฒด ์์คํ ๋๋ ์ ํ์ ์ ๋ฐ์ ์ธ ๋์๊ณผ ๊ธฐ๋ฅ์ ์ค์ ์ ๋ ํ ์คํธ ๋ ๋ฒจ. ๊ธฐ๋ฅ ํ ์คํ ๊ณผ ๋น๊ธฐ๋ฅ ํ ์คํ ์ ํฌํจ
- ํ ์คํธ ๋ ๋ฒจ (test level): ํน์ ๊ฐ๋ฐ ๋จ๊ณ์ ์ํํธ์จ์ด์ ๊ด๋ จํด ์ํํ๋, ํจ๊ป ๊ตฌ์ฑํ๊ณ ๊ด๋ฆฌํ๋ ํ ์คํธ ํ๋์ ์งํฉ
- ํ ์คํธ ๋์ (test object): ํ ์คํธ์ ๋์์ด ๋๋ ์์ ์ฐ์ถ๋ฌผ
- ํ ์คํธ ์ ํ (test type): ํน์ ํ์ง ํน์ฑ๊ณผ ๊ด๋ จ๋ ํ ์คํธ ํ๋์ ์งํฉ. ๋๋ถ๋ถ์ ํ ์คํธ ๋ ๋ฒจ์์ ์ํ ๊ฐ๋ฅ
- ํ์ดํธ๋ฐ์ค ํ ์คํ (white-box testing): ๊ตฌ์กฐ ๊ธฐ๋ฐ์ด๋ฉฐ, ์์คํ ์ ๊ตฌํ ๋๋ ๋ด๋ถ ๊ตฌ์กฐ(์ฝ๋, ์ํคํ ์ฒ ๋ฑ)์์ ํ ์คํธ๋ฅผ ๋์ถํ๋ ํ ์คํธ ์ ํ
Confirmation Testing โ Regression Testing
- Confirmation = ์๋ ๊ฒฐํจ์ด ์ ๋๋ก ๊ณ ์ณ์ก๋์ง ํ์ธ
- Regression = ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๋ค๋ฅธ ๊ณณ์ ๋ถ์์ฉ์ด ์๋์ง ํ์ธ
Component โ Component Integration โ System โ System Integration โ Acceptance
- ํ ์คํธ ๋ ๋ฒจ์ ์ํํธ์จ์ด ๊ท๋ชจ๊ฐ ์ปค์ง๋ ์์๋ก ์งํ (์ปดํฌ๋ํธ โ ์ปดํฌ๋ํธ ํตํฉ โ ์์คํ โ ์์คํ ํตํฉ โ ์ธ์)
Functional โ Non-functional
- Functional = ๋ฌด์์ ํ๋๊ฐ (What)
- Non-functional = ์ผ๋ง๋ ์ํ๋๊ฐ (How well)
Black-box โ White-box
- Black-box = ๋ช ์ธ ๊ธฐ๋ฐ, ๋ด๋ถ ๊ตฌ์กฐ๋ฅผ ์ฐธ์กฐํ์ง ์๊ณ ๋ช ์ธยท์๊ตฌ์ฌํญยท๊ธฐ๋ ๋์์ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํธ ๋์ถ
- White-box = ๊ตฌ์กฐ ๊ธฐ๋ฐ, ๋ด๋ถ ์ฝ๋/๊ตฌํ ์ฐธ์กฐ
๐งฉ ์ 3 ์ฅ ์ ์ ํ ์คํ (Static Testing)
- ์ด์ ์ฌํญ (anomaly): ํ์ค, ๋ช ์ธ, ๊ธฐ๋์น, ์ฌ์ฉ์ ์ธ์ ๋ฑ์์ ๋ฒ์ด๋ ์ํ. ๊ฒฐํจ์ผ ์๋, ์๋ ์๋ ์์
- ๋์ ํ ์คํ (dynamic testing): ํ ์คํธ ๋์ ์ํํธ์จ์ด๋ฅผ ์ค์ ๋ก ์คํํด์ ์ํํ๋ ํ ์คํ
- ๊ณต์ ๋ฆฌ๋ทฐ (formal review): ์ ์๋ ํ๋ก์ธ์ค(๊ณํ, ์ฐฉ์, ๊ฐ๋ณ ๋ฆฌ๋ทฐ, ๋ ผ์, ์์ , ๋ณด๊ณ )๋ฅผ ์ฒ ์ ํ ๋ฐ๋ฅด๋ ๋ฆฌ๋ทฐ. ์ธ์คํ์ ์ด ๋ํ์
- ๋น๊ณต์ ๋ฆฌ๋ทฐ (informal review): ์ ์๋ ํ๋ก์ธ์ค๋ฅผ ๋ฐ๋ฅด์ง ์์ผ๋ฉฐ, ๊ณต์์ ์ธ ๊ฒฐ๊ณผ ๋ฌธ์๋ ์๊ตฌํ์ง ์๋ ๋ฆฌ๋ทฐ. ์ด์ ์ฌํญ ์๋ณ์ด ์ฃผ ๋ชฉ์
- ์ธ์คํ์ (inspection): ๊ฐ์ฅ ๊ณต์์ ์ธ ๋ฆฌ๋ทฐ ์ ํ. ์ ์๊ฐ ๋ฆฌ๋ทฐ ๋ฆฌ๋๋ ์๊ธฐ๊ฐ ๋ ์ ์์ผ๋ฉฐ, ์ด์ ์ฌํญ์ ์ต๋ํ ๋ง์ด ์ฐพ๋ ๊ฒ์ด ๋ชฉ์
- ๋ฆฌ๋ทฐ (review): ์์ ์ฐ์ถ๋ฌผ์ ์ดํด๊ด๊ณ์๋ค์ด ํ๊ฐํด ์ด์ ์ฌํญ์ ์ฐพ๊ณ ๊ฐ์ ํ๋ ์ ์ ํ ์คํ ๊ธฐ๋ฒ
- ์ ์ ๋ถ์ (static analysis): ๋๊ตฌ๋ฅผ ์ฌ์ฉํด ์ฝ๋๋ ์ฐ์ถ๋ฌผ์ ์คํํ์ง ์๊ณ ๋ถ์ํ๋ ๊ฒ
- ์ ์ ํ ์คํ (static testing): ํ ์คํธ ๋์ ์ํํธ์จ์ด๋ฅผ ์คํํ์ง ์๊ณ ์ํํ๋ ํ ์คํ (๋ฆฌ๋ทฐ, ์ ์ ๋ถ์ ํฌํจ)
- ๊ธฐ์ ๋ฆฌ๋ทฐ (technical review): ๊ธฐ์ ์ ์๊ฒฉ์ ๊ฐ์ถ ๋ฆฌ๋ทฐ์ด๊ฐ ์ํํ๋ฉฐ, ์ค์ฌ์๊ฐ ๋ฆฌ๋๊ฐ ๋๋ ๋ฆฌ๋ทฐ. ๊ธฐ์ ์ ํฉ์ ๋์ถ์ด ๋ชฉ์
- ์ํฌ์ฐ๋ฃจ (walkthrough): ์ ์๊ฐ ๋ฆฌ๋๊ฐ ๋์ด ์งํํ๋ ๋ฆฌ๋ทฐ. ์ ๋ขฐ ๊ตฌ์ถ, ๊ต์ก, ์์ด๋์ด ์ฐฝ์ถ ๋ฑ ๋ค์ํ ๋ชฉ์
Static Testing โ Dynamic Testing
- Static = ์คํ ์ ํจ (๋ฆฌ๋ทฐ, ์ ์ ๋ถ์)
- Dynamic = ์คํํจ
Informal Review โ Walkthrough โ Technical Review โ Inspection
- ๊ณต์์ฑ์ด ๋ฎ์ ์์์์ ๋์ ์์๋ก (Inspection์ด ๊ฐ์ฅ ๊ณต์์ )
๋ฆฌ๋ทฐ ์ฃผ์ ์ญํ
- ๊ด๋ฆฌ์ = ๋ฆฌ๋ทฐ ์์ ์ ๊ณต
- ์ ์ = ์ฐ์ถ๋ฌผ ์์ฑ/์์
- ์ค์ฌ์(ํผ์ค๋ฆฌํ ์ดํฐ) = ํ์ ์ด์
- ์๊ธฐ(๊ธฐ๋ก์) = ์ด์ ์ฌํญ ๊ธฐ๋ก
- ๋ฆฌ๋ทฐ์ด = ๋ฆฌ๋ทฐ ์ํ
- ๋ฆฌ๋ทฐ ๋ฆฌ๋ = ์ ๋ฐ์ ์ฑ ์
์ ์๊ฐ ๋ฆฌ๋/์๊ธฐ๋ฅผ ๋ชป ๋งก๋ ๋ฆฌ๋ทฐ
- Inspection (๊ฐ์ฅ ๊ณต์์ ์ด๋ฏ๋ก ๊ฐ๊ด์ฑ ์ ์ง๋ฅผ ์ํด)
๐งฉ ์ 4 ์ฅ ํ ์คํธ ๋ถ์๊ณผ ์ค๊ณ(Test Analysis and Design)
4.1 ํ ์คํธ ๊ธฐ๋ฒ ๊ฐ์ โ
- ํ ์คํธ ๊ธฐ๋ฒ (test technique): ํ ์คํธ ๋ถ์๊ณผ ์ค๊ณ๋ฅผ ์ง์ํ๋ ์ ์ฐจ. ๋ธ๋๋ฐ์ค, ํ์ดํธ๋ฐ์ค, ๊ฒฝํ ๊ธฐ๋ฐ์ผ๋ก ๋ถ๋ฅ
4.2 ๋ธ๋๋ฐ์ค ํ ์คํธ ๊ธฐ๋ฒ โ
- ๋ธ๋๋ฐ์ค ํ ์คํธ ๊ธฐ๋ฒ (black-box test technique): ๋ช ์ธ ๊ธฐ๋ฐ ๊ธฐ๋ฒ. ๋ด๋ถ ๊ตฌ์กฐ๋ฅผ ์ฐธ์กฐํ์ง ์๊ณ ๋ช ์๋ ๋์์ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํธ ๋์ถ
- ๋๋ฑ ๋ถํ (equivalence partitioning): ํ ์คํธ ๋์ ๋ฐ์ดํฐ๋ฅผ ๋์ผํ๊ฒ ์ฒ๋ฆฌ๋ ๊ฒ์ผ๋ก ์์๋๋ ๋ถํ (ํํฐ์ ) ๋จ์๋ก ๋๋๋ ๊ธฐ๋ฒ
- ๊ฒฝ๊ณ๊ฐ ๋ถ์ (boundary value analysis): ๋๋ฑ ๋ถํ ์ ๊ฒฝ๊ณ์ ์๋ ๊ฐ์ ํ ์คํธํ๋ ๊ธฐ๋ฒ. ๋ ๊ฐ ์ ํ(2-value)๊ณผ ์ธ ๊ฐ ์ ํ(3-value) ๋ฐฉ์์ด ์์
- ๊ฒฐ์ ํ ์ด๋ธ ํ ์คํ (decision table testing): ์กฐ๊ฑด๋ค์ ๋ค์ํ ์กฐํฉ๊ณผ ๊ทธ์ ๋ฐ๋ฅธ ๊ฒฐ๊ณผ(๋์)๋ฅผ ํ๋ก ์ ๋ฆฌํด ํ ์คํธํ๋ ๊ธฐ๋ฒ
- ์ํ ์ ์ด ํ ์คํ (state transition testing): ์์คํ ์ ์ํ์ ์ํ ๊ฐ ์ ์ด(์ด๋ฒคํธ์ ์ํ ๋ณํ)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํธ๋ฅผ ๋์ถํ๋ ๊ธฐ๋ฒ
- ์ปค๋ฒ๋ฆฌ์ง (coverage): ํ ์คํธ ์ผ์ด์ค๊ฐ ์คํํ ์ปค๋ฒ๋ฆฌ์ง ํญ๋ชฉ ์๋ฅผ ์ ์ฒด ์ปค๋ฒ๋ฆฌ์ง ํญ๋ชฉ ์๋ก ๋๋ ๊ฐ
- ์ปค๋ฒ๋ฆฌ์ง ํญ๋ชฉ (coverage item): ํ ์คํธ ๊ธฐ๋ฒ์ ๋ฐ๋ผ ์ ์๋๋ ํ ์คํธ ๋์(์: ๋๋ฑ ๋ถํ ์์๋ ๋ถํ , ๊ฒฐ์ ํ ์ด๋ธ์์๋ ๊ท์น ์ด)
4.3 ํ์ดํธ๋ฐ์ค ํ ์คํธ ๊ธฐ๋ฒ โ
- ํ์ดํธ๋ฐ์ค ํ ์คํธ ๊ธฐ๋ฒ (white-box test technique): ๊ตฌ์กฐ ๊ธฐ๋ฐ ๊ธฐ๋ฒ. ํ ์คํธ ๋์์ ๋ด๋ถ ๊ตฌ์กฐ์ ์ฒ๋ฆฌ ๋ก์ง์ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํธ ๋์ถ
- ๊ตฌ๋ฌธ ์ปค๋ฒ๋ฆฌ์ง (statement coverage): ์ฝ๋์ ์คํ ๊ฐ๋ฅํ ๊ตฌ๋ฌธ์ด ํ ์คํธ ์ผ์ด์ค์ ์ํด ์คํ๋ ๋น์จ
- ๋ถ๊ธฐ ์ปค๋ฒ๋ฆฌ์ง (branch coverage): ์ฝ๋์ ๋ถ๊ธฐ(์กฐ๊ฑด์ ์ฐธ/๊ฑฐ์ง ๊ฒฐ๊ณผ ๋ฑ)๊ฐ ํ ์คํธ ์ผ์ด์ค์ ์ํด ์คํ๋ ๋น์จ. ๊ตฌ๋ฌธ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ํฌํจํจ
4.4 ๊ฒฝํ ๊ธฐ๋ฐ ํ ์คํธ ๊ธฐ๋ฒ โ
- ๊ฒฝํ ๊ธฐ๋ฐ ํ ์คํธ ๊ธฐ๋ฒ (experience-based test technique): ํ ์คํฐ์ ์ง์๊ณผ ๊ฒฝํ์ ํ์ฉํด ํ ์คํธ ์ผ์ด์ค๋ฅผ ์ค๊ณํ๋ ๊ธฐ๋ฒ
- ์ค๋ฅ ์ถ์ (error guessing): ํ ์คํฐ์ ์ง์(๊ณผ๊ฑฐ ๋์, ํํ ์ค๋ฅ ์ ํ ๋ฑ)์ ๊ธฐ๋ฐ์ผ๋ก ์ค๋ฅยท๊ฒฐํจยท์ฅ์ ๋ฐ์์ ์์ธกํ๋ ๊ธฐ๋ฒ
- ํ์์ ํ ์คํ (exploratory testing): ํ ์คํธ์ ์ค๊ณ, ์คํ, ํ๊ฐ๋ฅผ ๋์์ ํ๋ฉฐ ๋ฐฐ์๊ฐ๋ ํ ์คํ . ์ธ์ ๊ธฐ๋ฐ ํ ์คํ ์ผ๋ก ๊ตฌ์กฐํํ๊ธฐ๋ ํจ
- ์ฒดํฌ๋ฆฌ์คํธ ๊ธฐ๋ฐ ํ ์คํ (checklist-based testing): ์ฒดํฌ๋ฆฌ์คํธ๋ฅผ ํ์ฉํด ํ ์คํธ ์ปจ๋์ ์ ํ์ธํ๋ ํ ์คํธ๋ฅผ ์ค๊ณยท์คํํ๋ ๊ธฐ๋ฒ
4.5 ํ์ ๊ธฐ๋ฐ ํ ์คํธ ์ ๊ทผ๋ฒ โ
- ํ์ ๊ธฐ๋ฐ ํ ์คํธ ์ ๊ทผ๋ฒ (collaboration-based test approach): ๊ฒฐํจ ์๋ฐฉ์ ์ํด ํ์ ๊ณผ ์ปค๋ฎค๋์ผ์ด์ ์ ์ด์ ์ ๋ ํ ์คํธ ์ ๊ทผ๋ฒ
- ์ธ์ ์กฐ๊ฑด (acceptance criteria): ์ฌ์ฉ์ ์คํ ๋ฆฌ ๊ตฌํ ๊ฒฐ๊ณผ๋ฅผ ์ดํด๊ด๊ณ์๊ฐ ์น์ธํ๊ธฐ ์ํด ์ถฉ์กฑ๋์ด์ผ ํ๋ ์กฐ๊ฑด
- ์ธ์ ํ ์คํธ ์ฃผ๋ ๊ฐ๋ฐ (ATDD, acceptance test-driven development): ์ฌ์ฉ์ ์คํ ๋ฆฌ ๊ตฌํ ์ ์ ์ธ์ ์กฐ๊ฑด์ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํธ ์ผ์ด์ค๋ฅผ ๋จผ์ ๋ง๋๋ ํ ์คํธ ์ฐ์ ์ ๊ทผ๋ฒ
๋ธ๋๋ฐ์ค vs ํ์ดํธ๋ฐ์ค vs ๊ฒฝํ ๊ธฐ๋ฐ
- ๋ธ๋๋ฐ์ค = ๋ช ์ธ ๊ธฐ๋ฐ, ๋ด๋ถ ๊ตฌ์กฐ ๋ชจ๋ฆ
- ํ์ดํธ๋ฐ์ค = ๊ตฌ์กฐ ๊ธฐ๋ฐ, ๋ด๋ถ ์ฝ๋ ์ฐธ์กฐ
- ๊ฒฝํ ๊ธฐ๋ฐ = ํ ์คํฐ์ ์ง์ยท๊ฒฝํ ๊ธฐ๋ฐ
๊ฒฝ๊ณ๊ฐ ๋ถ์: 2-value vs 3-value
- 2-value = ๊ฒฝ๊ณ๊ฐ + ์ธ์ ๊ฐ 1๊ฐ (๊ฒฝ๊ณ๊ฐ๋น ์ปค๋ฒ๋ฆฌ์ง ํญ๋ชฉ 2๊ฐ)
- 3-value = ๊ฒฝ๊ณ๊ฐ + ์์ชฝ ์ธ์ ๊ฐ (๊ฒฝ๊ณ๊ฐ๋น ์ปค๋ฒ๋ฆฌ์ง ํญ๋ชฉ 3๊ฐ, ๋ ์๊ฒฉํจ)
๊ตฌ๋ฌธ ์ปค๋ฒ๋ฆฌ์ง โ ๋ถ๊ธฐ ์ปค๋ฒ๋ฆฌ์ง
- ๋ถ๊ธฐ ์ปค๋ฒ๋ฆฌ์ง 100% ๋ฌ์ฑ โ ๊ตฌ๋ฌธ ์ปค๋ฒ๋ฆฌ์ง๋ 100% (์ญ์ ์ฑ๋ฆฝ ์ ํจ)
์ํ ์ ์ด ํ
์คํ
์ปค๋ฒ๋ฆฌ์ง ๊ฐ๋
- ๋ชจ๋ ์ํ ์ปค๋ฒ๋ฆฌ์ง < ์ ํจ ์ ์ด ์ปค๋ฒ๋ฆฌ์ง < ๋ชจ๋ ์ ์ด ์ปค๋ฒ๋ฆฌ์ง
์ฌ์ฉ์ ์คํ ๋ฆฌ์ 3C
- Card(์นด๋) = ์ค๋ช ๋งค์ฒด
- Conversation(๋ํ) = ์ฌ์ฉ ๋ฐฉ๋ฒ ์ค๋ช
- Confirmation(ํ์ธ) = ์ธ์ ์กฐ๊ฑด
์ข์ ์ฌ์ฉ์ ์คํ ๋ฆฌ = INVEST
- Independent, Negotiable, Valuable, Estimable, Small, Testable
๐งฉ ์ 5 ์ฅ ํ ์คํธ ํ๋ ๊ด๋ฆฌ(Test Management)
5.1 ํ ์คํธ ๊ณํ โ
- ํ ์คํธ ์ ๊ทผ๋ฒ (test approach): ํ ์คํธ ๋ชฉ์ ๋ฌ์ฑ์ ์ํด ์ ํํ๋ ๋ฐฉ๋ฒ(ํ ์คํธ ๋ ๋ฒจ, ์ ํ, ๊ธฐ๋ฒ ๋ฑ์ ํฌํจ)
- ํ ์คํธ ๊ณํ (test planning): ํ ์คํธ ๋ชฉ์ ์ ์ ์ํ๊ณ ๊ทธ๊ฒ์ ๋ฌ์ฑํ ์ ๊ทผ๋ฒ์ ์ ํํ๋ ํ๋
- ํ ์คํธ ๊ณํ์ (test plan): ํ ์คํธ ํ๋ก์ ํธ์ ํ ์คํธ ๋ชฉ์ , ์์, ํ๋ก์ธ์ค๋ฅผ ์ค๋ช ํ๋ ๋ฌธ์
- ์์ ์กฐ๊ฑด (entry criteria): ์ด๋ค ํ๋์ ์ํํ๊ธฐ ์ํ ์ ์ ์กฐ๊ฑด
- ์๋ฃ ์กฐ๊ฑด (exit criteria): ํน์ ํ๋์ ์ข ๋ฃ๋ฅผ ์ ์ธํ๊ธฐ ์ํด ๋ฌ์ฑํด์ผ ํ๋ ์ฌํญ
- ํ ์คํธ ํผ๋ผ๋ฏธ๋ (test pyramid): ํ ์คํธ์ ์ธ๋ถํ ์์ค์ด ๋ค๋ฅด๋ค๋ ๊ฒ์ ๋ณด์ฌ์ฃผ๋ ๋ชจ๋ธ. ์๋์ธต์ผ์๋ก ์๊ณ ๋น ๋ฅด๊ณ ๋ง์ ํ ์คํธ, ์์ธต์ผ์๋ก ํฌ๊ณ ๋๋ฆฌ๊ณ ์ ์ ํ ์คํธ
- ํ ์คํ ์ฌ๋ถ๋ฉด (testing quadrants): ํ ์คํธ ๋ ๋ฒจ์ ์ ํฉํ ํ ์คํธ ์ ํยทํ๋ยท๊ธฐ๋ฒ๊ณผ ๋ฌถ์ด ์๊ฐํํ ๋ชจ๋ธ (๋ธ๋ผ์ด์ธ ๋ง๋ฆญ ์ ์)
5.2 ๋ฆฌ์คํฌ ๊ด๋ฆฌ โ
- ๋ฆฌ์คํฌ (risk): ๋ฐ์ ์ ๋ถ์ ์ ์ธ ์ํฅ์ ๋ฏธ์น ์ ์๋ ์ ์ฌ์ ์ธ ์ฌ๊ฑดยท์ํยท์ํยท์ํฉ
- ๋ฆฌ์คํฌ ๋ถ์ (risk analysis): ๋ฆฌ์คํฌ ์๋ณ๊ณผ ๋ฆฌ์คํฌ ํ๊ฐ๋ก ๊ตฌ์ฑ๋๋ ํ๋
- ๋ฆฌ์คํฌ ํ๊ฐ (risk assessment): ์๋ณํ ๋ฆฌ์คํฌ๋ฅผ ๋ถ๋ฅํ๊ณ ๋ฐ์ ๊ฐ๋ฅ์ฑยท์ํฅยท์์ค์ ๊ฒฐ์ ํ๋ ํ๋
- ๋ฆฌ์คํฌ ์ ์ด (risk control): ์๋ณยทํ๊ฐ๋ ๋ฆฌ์คํฌ์ ๋์ํด ์ทจํ๋ ์กฐ์น (๋ฆฌ์คํฌ ์ํ + ๋ฆฌ์คํฌ ๋ชจ๋ํฐ๋ง)
- ๋ฆฌ์คํฌ ์๋ณ (risk identification): ํฌ๊ด์ ์ธ ๋ฆฌ์คํฌ ๋ชฉ๋ก์ ์์ฑํ๋ ํ๋
- ๋ฆฌ์คํฌ ์์ค (risk level): ๋ฆฌ์คํฌ ๋ฐ์ ๊ฐ๋ฅ์ฑ๊ณผ ๋ฆฌ์คํฌ ์ํฅ(ํผํด)์ ์กฐํฉ์ผ๋ก ๊ฒฐ์ ๋๋ ๋ฆฌ์คํฌ์ ์ธก์ ๊ฐ
- ๋ฆฌ์คํฌ ๊ด๋ฆฌ (risk management): ๋ฆฌ์คํฌ ๋ถ์๊ณผ ๋ฆฌ์คํฌ ์ ์ด๋ฅผ ํฌ๊ดํ๋ ์ ์ฒด ํ๋
- ๋ฆฌ์คํฌ ์ํ (risk mitigation): ๋ฆฌ์คํฌ ํ๊ฐ ๋ ์ ์๋ ์กฐ์น๋ฅผ ์คํํด ๋ฆฌ์คํฌ ์์ค์ ๋ฎ์ถ๋ ํ๋
- ๋ฆฌ์คํฌ ๋ชจ๋ํฐ๋ง (risk monitoring): ๋ฆฌ์คํฌ ์ํ ์กฐ์น์ ํจ๊ณผ ํ์ธ ๋ฐ ์๋ก์ด ๋ฆฌ์คํฌ ์๋ณ
- ๋ฆฌ์คํฌ ๊ธฐ๋ฐ ํ ์คํ (risk-based testing): ๋ฆฌ์คํฌ ๋ถ์๊ณผ ๋ฆฌ์คํฌ ์ ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํธ ํ๋์ ์ฐ์ ์์๋ฅผ ์ ํด ๊ด๋ฆฌํ๋ ์ ๊ทผ๋ฒ
- ํ๋ก์ ํธ ๋ฆฌ์คํฌ (project risk): ํ๋ก์ ํธ ๊ด๋ฆฌ ๋ฐ ์ ์ด์ ๊ด๋ จ๋ ๋ฆฌ์คํฌ (์ผ์ , ์ธ๋ ฅ, ์์ฐ ๋ฑ)
- ์ ํ ๋ฆฌ์คํฌ (product risk): ์ ํ์ ํ์ง ํน์ฑ๊ณผ ๊ด๋ จ๋ ๋ฆฌ์คํฌ (์๋ชป๋ ๊ธฐ๋ฅ, ์ฑ๋ฅ ๋ฌธ์ , ๋ณด์ ์ทจ์ฝ์ ๋ฑ)
5.3 ํ ์คํธ ๋ชจ๋ํฐ๋ง, ํ ์คํธ ์ ์ด, ํ ์คํธ ์๋ฃ โ
- ํ ์คํธ ๋ชจ๋ํฐ๋ง (test monitoring): ํ ์คํธ ์ ๋ณด๋ฅผ ์์งํด ์งํ ์ํฉ์ ํ๊ฐํ๊ณ ์๋ฃ ์กฐ๊ฑด ์ถฉ์กฑ ์ฌ๋ถ๋ฅผ ์ธก์ ํ๋ ํ๋
- ํ ์คํธ ์ ์ด (test control): ๋ชจ๋ํฐ๋ง ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํจ๊ณผ์ ์ธ ํ ์คํ ์ ์ํ ์ง์นจยท์์ ์กฐ์น๋ฅผ ์ ๊ณตํ๋ ํ๋
- ํ ์คํธ ์งํ ๋ณด๊ณ ์ (test progress report): ์ง์์ ์ธ ํ ์คํธ ์ ์ด๋ฅผ ์ง์ํ๊ธฐ ์ํด ์ ๊ธฐ์ ์ผ๋ก ์์ฑํ๋ ๋ณด๊ณ ์
- ํ ์คํธ ์๋ฃ ๋ณด๊ณ ์ (test completion report): ํน์ ํ ์คํธ ํ๋(๋ ๋ฒจ, ์ฃผ๊ธฐ ๋ฑ)์ ์์ฝํ๊ณ ํ์ ํ ์คํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ณด๊ณ ์
5.4 ํ์ ๊ด๋ฆฌ โ
- (ํ์ ๊ด๋ฆฌ ์์ฒด๋ ์ฉ์ด้์๋ ์์ง๋ง) ํ ์คํธ ๊ณํ์, ์ผ์ด์ค, ๊ฒฐ๊ณผ ๋ฑ์ ์์ ์ฐ์ถ๋ฌผ์ ์๋ณยท์ ์ดยท์ถ์ ํ๋ ํ๋. ๋ฒ ์ด์ค๋ผ์ธ ์ค์ ๊ณผ ๋ณ๊ฒฝ ์ ์ด๋ฅผ ํตํด ํ ์คํธ ์ฌํ์ฑ์ ๋ณด์ฅ
5.5 ๊ฒฐํจ ๊ด๋ฆฌ โ
- ๊ฒฐํจ ๊ด๋ฆฌ (defect management): ๊ฒฐํจ์ด๋ ์ด์ ์ฌํญ์ ๋ฐ๊ฒฌ๋ถํฐ ์ข ๋ฃ๊น์ง ์ฒ๋ฆฌํ๋ ํ๋ก์ธ์ค
- ๊ฒฐํจ ๋ณด๊ณ ์ (defect report): ๊ฒฐํจ(์ด์ ์ฌํญ)์ ๋ฌธ์ํํด ๋ด๋น์์๊ฒ ์ ๋ฌํ๋ ๋ณด๊ณ ์
๋ฆฌ์คํฌ ์์ค = ๋ฐ์ ๊ฐ๋ฅ์ฑ ร ์ํฅ
- ๋ฐ์ ๊ฐ๋ฅ์ฑ(Probability) ร ์ํฅ/ํผํด(Impact) โ ๋ฆฌ์คํฌ ์์ค ๊ฒฐ์
Project Risk โ Product Risk
- Project Risk = ํ๋ก์ ํธ๋ฅผ ๋ชป ๋๋ผ ๋ฆฌ์คํฌ (์ผ์ , ์ธ๋ ฅ, ์์ฐ)
- Product Risk = ์ ํ ํ์ง์ด ๋์ ๋ฆฌ์คํฌ (๊ธฐ๋ฅ, ์ฑ๋ฅ, ๋ณด์)
Risk Analysis = Identification + AssessmentRisk Control = Mitigation + Monitoring
- ๋ถ์(์๋ณโํ๊ฐ) ํ ์ ์ด(์ํ+๋ชจ๋ํฐ๋ง)๋ก ์ด์ด์ง๋ ํ๋ฆ
Test Monitoring โ Test Control (1์ฅ์์ ๋์จ ๊ฒ๊ณผ ๋์ผ ๊ฐ๋
, 5์ฅ์์ ์ฌํ)
- Monitoring = ์ ๋ณด ์์งยท์ธก์
- Control = ๊ทธ์ ๋ฐ๋ฅธ ์กฐ์น
์ถ์ ๊ธฐ๋ฒ 4๊ฐ์ง
- ๋น์จ ๊ธฐ๋ฐ ์ถ์ (Estimation based on ratios)
- ์ธ์ฝ๋ฒ (Extrapolation)
- ์์ด๋๋ฐด๋ ๋ธํ์ด (Wideband Delphi) โ ํ๋๋ ํฌ์ปค๊ฐ ์ ์์ผ ๋ณํ
- 3์ ์ถ์ (Three-point estimation) โ E=(a+4m+b)/6
ํ
์คํธ ์ผ์ด์ค ์ฐ์ ์์์ง์ 3๊ฐ์ง
- ๋ฆฌ์คํฌ ๊ธฐ๋ฐ / ์ปค๋ฒ๋ฆฌ์ง ๊ธฐ๋ฐ / ์๊ตฌ์ฌํญ ๊ธฐ๋ฐ
ํ
์คํธ ํผ๋ผ๋ฏธ๋ vs ํ
์คํ
์ฌ๋ถ๋ฉด
- ํผ๋ผ๋ฏธ๋ = ํ ์คํธ ์๋ํ ์์คยท์ธ๋ถํ์ ๋ฐ๋ฅธ ๊ตฌ์กฐ
- ์ฌ๋ถ๋ฉด = ํ ์คํธ ๋ ๋ฒจ์ ๋น์ฆ๋์ค/๊ธฐ์ ร ํ์ง์/์ ํํ๊ฐ ์ถ์ผ๋ก ๋ถ๋ฅ
๐งฉ ์ 6 ์ฅ ํ ์คํธ ๋๊ตฌ(Test Tools)
- ํ ์คํธ ์๋ํ (test automation): ํ ์คํธ ํ๋(์ฃผ๋ก ํ ์คํธ ์คํ)์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํด ์๋์ผ๋ก ์ํํ๋ ๊ฒ
6.1 ํ ์คํ ์ง์ ๋๊ตฌ ์ ํ โ
- ํ ์คํธ ๊ด๋ฆฌ ๋๊ตฌ: SDLC, ์๊ตฌ์ฌํญ, ํ ์คํธ, ๊ฒฐํจ, ํ์ ๊ด๋ฆฌ๋ฅผ ์ง์
- ์ ์ ํ ์คํ ๋๊ตฌ: ๋ฆฌ๋ทฐ์ ์ ์ ๋ถ์ ์ํ์ ์ง์
- ํ ์คํธ ์ค๊ณ ๋ฐ ๊ตฌํ ๋๊ตฌ: ํ ์คํธ ์ผ์ด์ค, ๋ฐ์ดํฐ, ์ ์ฐจ ์์ฑ์ ์ง์
- ํ ์คํธ ์คํ ๋ฐ ์ปค๋ฒ๋ฆฌ์ง ๋๊ตฌ: ์๋ ํ ์คํธ ์คํ ๋ฐ ์ปค๋ฒ๋ฆฌ์ง ์ธก์ ์ ์ง์
- ๋น๊ธฐ๋ฅ ํ ์คํ ๋๊ตฌ: ์๋์ผ๋ก ํ๊ธฐ ์ด๋ ค์ด ๋น๊ธฐ๋ฅ ํ ์คํธ(์ฑ๋ฅ ๋ฑ) ์ํ์ ์ง์
- ๋ฐ๋ธ์ต์ค ๋๊ตฌ: ๋ฐฐํฌ ํ์ดํ๋ผ์ธ, ์ง์์ ํตํฉ/๋ฐฐํฌ ๋ฑ์ ์ง์
- ํ์ ๋๊ตฌ: ํ ๊ฐ ์ปค๋ฎค๋์ผ์ด์ ์ง์
- ํ์ฅ์ฑ/๋ฐฐํฌ ํ์คํ ๋๊ตฌ: ๊ฐ์ ๋จธ์ , ์ปจํ ์ด๋ํ ๋๊ตฌ ๋ฑ
6.2 ํ ์คํธ ์๋ํ์ ํจ๊ณผ์ ๋ฆฌ์คํฌ โ
ํจ๊ณผ
- ๋ฐ๋ณต์ ์์์ ๊ฐ์๋ก ์๊ฐ ์ ์ฝ
- ์ผ๊ด์ฑยท์ฌํ์ฑ ํฅ์
- ๊ฐ๊ด์ ํ๊ฐยท์ธก์ ์น ์ ๊ณต
- ํ ์คํธ ์ ๋ณด ์ ๊ทผ์ฑ ํฅ์
- ํ ์คํธ ์คํ ์๊ฐ ๋จ์ถ
- ํ ์คํฐ๊ฐ ๋ ์ฌ์ธต์ ์ธ ํ ์คํธ ์ค๊ณ์ ์ง์ค ๊ฐ๋ฅ
๋ฆฌ์คํฌ
- ๋๊ตฌ ํจ๊ณผ์ ๋ํ ๋นํ์ค์ ๊ธฐ๋
- ๋์ ยท์ ์ง๋ณด์ ๋น์ฉ/๋ ธ๋ ฅ์ ๋ถ์ ํํ ์ถ์
- ์๋์ด ๋ ์ ํฉํ ๊ณณ์ ๋๊ตฌ ์ฌ์ฉ
- ๋๊ตฌ์ ๋ํ ๊ณผ๋ํ ์์กด
- ๋๊ตฌ ๊ณต๊ธ์ ์ฒด ์ข ์์ฑ
- ์คํ์์ค ์ํํธ์จ์ด์ ์ง์ ์ค๋จ ๋ฆฌ์คํฌ
- ๊ฐ๋ฐ ํ๋ซํผ๊ณผ์ ํธํ์ฑ ๋ฌธ์
- ๊ท์ ยท์์ ํ์ค ๋ฏธ์ค์ ๋๊ตฌ ์ ํ
๋๊ตฌ ์ ํ ์๊ธฐ ํ
- ๊ด๋ฆฌ / ์ ์ / ์ค๊ณยท๊ตฌํ / ์คํยท์ปค๋ฒ๋ฆฌ์ง / ๋น๊ธฐ๋ฅ / ๋ฐ๋ธ์ต์ค / ํ์ / ํ์ฅ์ฑ
์๋ํ ํจ๊ณผ vs ๋ฆฌ์คํฌ
- ํจ๊ณผ = ์๊ฐยท์ผ๊ด์ฑยท๊ฐ๊ด์ฑยท์ ๊ทผ์ฑยท์๋
- ๋ฆฌ์คํฌ = ๊ธฐ๋ยท๋น์ฉยท์์กดยท์ข ์์ฑยทํธํ์ฑ