HYI.log
로그인
HYI.log
로그인
[TIL] 3.17 : Unit Test, CI/CD
HYl
·
2022년 3월 17일
팔로우
0
TIL
0
TIL
목록 보기
1/3
Unit Test
Code -> expectation (requirements) -> Test -> pass or fail
Test Runner (테스트를 실행 후 결과 생성) : Code -> expectation 과정을 뜻한다.
Assertion (테스트 조건, 비교를 통한 테스트 로직) : Test -> pass or fail 과정을 뜻한다.
Jest : Test Runner + Assertion
ui코드는 tdd를 하지 않는다
when tdd ?
요구사항이 명확할 때, 비지니스 로직, 협업시 명세서(문서) 역할, 설계에 대한 고민이 필요
why tdd ?
사용자 입장에서 코드를 작성, 코드의 퀄리티 향상, 모든 요구 사항(목표)에 대해 점검, 요구 사항 분석 및 이해 -> 설계, 시스템 전반적인 설계 향상, 개발 집중력 향상
why software test ?
기능이 정상 동작, 요구 사항 만족, 이슈에 대해 예측, 버그를 빠르게 발견, 자신감 있게 리팩토링, 손쉬운 유지 보수, 코드의 품질 향상, 코드간 의존성을 낮춤, 좋은 문서화, 시간을 절약
CI/CD
테스트 코드가 있을 때, 200%의 효과를 볼 수 있다.
CI (Continuous Integration) : 지속적인 통합
코드 변경사항을 주기적으로 빈번하게 머지해야 한다.
( 이때, 코드의 변경사항은 테스트 코드를 포함한 것을 의미한다. )
통합을 위한 단계 (빌드, 테스트, 머지)의 자동화
( 빌드 단계에서 오류는 없는지, 테스트 코드는 모두 통과가 되는지 등등 확인이 되어야 함. )
1, 2 자동적으로 되어야 한다.
장점 : 코드의 퀄리티 향상, 개발 생산성 향상, 버그 수정 용이, 문제점을 빠르게 발견 (테스트 코드 있다는 것을 가정하에 이루어짐)
CD (Continuous Deployment) : 지속적인 배포
CI/CD 의 과정
CODE -> BUILD -> TEST -> RELEASE -> DEPLOY
HYl
꾸준히 새로운 것을 알아가는 것을 좋아합니다.
팔로우
다음 포스트
[TIL] 3.17 : React 복습 , Tools
0개의 댓글
댓글 작성