테스트 주도 개발 (TDD)
TDD는 대학에서 교수님이 자바를 가르쳐주실 때 잠깐 배워본게 다 였는데
'실패하고 성공하는 과정에서 성취감을 더 잘 느껴져서 그런지 초록불이 들어오는게 재미있었다'가 느낀점의 전부였다
TDD의 필요성과 효능에 대해서는 다른 블로그에서도 잘 찾아볼 수 있고 나는 아직 현업 개발을 해본적이 없기 때문에 자세히 설명하지 못하겠지만
강의를 따라가면서 잊어먹지 않기 위해 조금씩 기록을 남겨보려고 한다
프레임 워크
자스민 버전 2.7.0을 따라간다
https://github.com/jasmine/jasmine/releases/tag/v2.7.0
기본 설명
describe 는 테스트 유닛들을 모아놓는 함수
it은 테스트를 할 수 있는 가장 작은 단위
expect(기댓값)로 기댓값을 정하고 코드를 짠 다음 테스트를 돌리고
toBe(결괏값)을 받아 비교한 후 테스트가 성공인지 실패인지 확인한다
실행
<script>
describe('it is describe', ()=> {
it('it is pass', ()=> {
expect(true).toBe(true)
})
it('it is fail',()=>
expect(true).toBe(false));
})
</script>
위의 설명을 바탕으로 만 코드를 짜면 이런식이다
describe안에 테스트 유닛들이 들어가있고
테스트 유닛은 하나의 기능만을 테스트하고 있다
첫번째 결과는 true를 기대하고 true를 넣어줬으니 당연히 성공
두번째는 true를 기대하는데 false를 넣어줬으니 실패가 뜨게 된다