2018-07-27 TIL
requestAnimationFrame을 재귀로 반복하여 애니메이션 만드는 기능을 테스트코드로 작성하는데
애를 먹었다.- 처음에는 [재귀가 호출되는 횟수 * 1frame 호출시간 = 총 동작시간] 을 계산해 setTimeout 안에서 assert를 호출하게 했는데, 돌아가는 환경마다 미묘한 시간차이가 발생할 수도 있고, 그렇다고 해서 버퍼를 충분히 준다는 대안이 뭔가 찝찝했음. 그래서 다 개발했지만 다시 다른 방법을 고민…
- 결국 기존메서드에 Promise를 가지고 재귀가 끝나는 시점에 resolve 하게 하여, 테스트코드에서는 then 안에 assert를 넣는 식으로 완성했다.
- 근데 기존메서드가 Promise를 return하는 코드로 바꼈는데 이게 테스트를 위해 변경된 거라 (동작은 똑같이 잘 되지만) 더 좋은 코드로 개선된 건가? 하는 의문이 든다. 다음 주에 크롱에게 여쭤봐야 할 듯.
- 노드보다 브라우저에서 mocha를 돌리는 환경이 장점도 있는 거 같다. async, await, promise 모두 아무런 추가 라이브러리 없이 다 잘 동작한다. (처음엔 이걸 착각해서 mocha용 promise라이브러리를 브라우저에서 돌리는 방법을 찾아봄;; 보통 노드에서 많이 하니까)
테스트 코트 작성경험
이 처음이라서 생각보다 시간이 오래 걸린다. @_ @ 근데 생각보다 주변에서 들은 것(지루하다, 하기싫어도 해야좋다 등)보다는 할만 한 것 같음.
Subscribe via RSS