본문 바로가기
프로그래밍/Code Craft

[2부 코드의 비밀스러운 일생] Chapter8 시험 보는 시간

by Ohdumak 2017. 10. 29.
728x90

테스트는 코드 공예에 있어서 필수불가결한 요소

 

프로그램을 작성하는 사람이라면 디버깅보다 테스트를 훨씬 많이 것이다.

 

에러(error)

당신이 일을 잘못하는 것을 에러라고 한다

사람이 행하는 동작

소프트웨어에 결함을 일으키는 원인

결함(fault)

결함은 에러의 결과

소프트웨어 안에 실체가 존대한다

고장(failure)

결함과 마주치면 그로 인해 고장이 일어날 수도 있다

버그(bug)

버그는 구어체 용어, 종종 결함과 동의어로 사용

 

소프트웨어 개발자로서 코드를 테스트하는 방법에 초점을 맞추자

 

누가, 무엇을, 언제, ?

테스트를 하나

테스트는 결함이 없다는 사실은 절대 보여줄 없다

결함이 있다는 사실만 보여줄 뿐이다

누가 테스트를 하나

소스 코드의 테스트는 소스 코드를 작성한 프로그래머의 책임

테스트는 무엇을 포함하나

주된 테스트 전략은 모든 코드를 돌려보고, 다른 코드를 덧붙여서 코드의 동작이 타당한지 확인하는

언제 테스트하나

효과적으로 코드를 테스트하려면 일찍 시작하자

작성하는 모든 코드에 대해서 즉시 테스트 코드를 작성하자

당신이 찾은 모든 결함에 대해 테스트 코드를 작성하자

테스트는 가능한 자주 하자

테스트는 어렵지 않다...

모든 코드를 냉소적인 태도로 읽자

테스트의 유형

단위테스트 : 모듈 테스트

컴포넌트 테스트 : 하나 이상의 단위를 모아서 컴포넌트 안에 넣은 타당성 검사

통합 테스트

역행 테스트

부하 테스트

스트레스 테스트

침수 테스트

유저빌리티 테스트: 엔드 유저 테스트

블랙박스 테스트: 기능 테스트

화이트박스 테스트: 구조 테스트

단위 테스트 케이스 선택하기

테스트를 위한 설계

쉽게 테스트할 있는 코드가 되도록 설계하자

놓고도 있어!

코드 테스트를 있는 자동화 하자

단위 테스트가 빌드 과정의 일부로서 자동으로 실행되게 하자

버그 리뷰

제품에 대한 책임이 있는 소프트웨어 개발자들.

테스트 팀의 대표들

관리자들

영업부와 마케팅부 사람들

회의에서는 미해결 결함 리포트의 목록에 있는 결함들이 차례로 논의하자

 


728x90

댓글