원티드 프론트엔드 프리온보딩 (22.12.19 월 ~ 23.01.20 금)
📍소프트웨어 테스트란?
예전에는 개발자는 개발만 담당하고, 테스트는 별도의 테스트팀이 맡았으나,
최근에는 개발자가 자동화된 테스트를 이용해 소프트웨어 테스트까지 맡는 것이 보편화됨
✅자동화된 테스트의 이점
1. 컴퓨터가 실행하므로 사람보다 빠름
2. 정해진 스크립트에 따라 일관성있게 동작하므로 human error를 줄일 수 있다
3. 개발중에 빠른 피드백을 받을 수 있다 (TDD)
⭐개발 생산성 향상 가능!
📍소프트웨어 테스트 종류
1. Unit Test (유닛 테스트)
- 가장 low-level 테스트
- 가장 작은 범위를 테스트
- 개별 함수, 메서드, 클래스, 컴포넌트 등의 동작을 테스트
2. Integration Test (통합 테스트)
- 2개 이상의 모듈이 결합해서 동작을 잘 수행하는지 테스트
3. End-to-End Test (E2E 테스트)
- 실제 유저가 앱을 사용하는 것과 유사한 환경을 구축한 뒤, 실제 유저의 동작을 흉내내서 테스트
- 실제 production과 유사한 환경 구축 필요