Front-end/Javascript

[Group Study, Topic] - e2e Test

Daniel(빡일) 2022. 11. 2. 20:10
반응형

Testing

 소프트웨어 테스트(영어: software test)는 주요 이해관계자들에게 시험 대상 제품 또는 서비스의 품질에 관한 정보를 제공하는 조사 과정이다. 소프트웨어 테스트는 또한 소프트웨어에 대한 객관적이고 독립적인 시각을 제공하여 사업주체가 소프트웨어 구현의 위험성을 올바로 이해하도록 한다. (wiki - https://ko.wikipedia.org/wiki/소프트웨어_테스트)

 보통 Software Engineering을 배워보았다면 테스팅은 여러 단계로 나뉜다. 보통 단위 -> 통합 -> 시스템 순으로 테스팅을 하게 되는데 FE에서 주로 E2E 테스팅(Unit Testing)을 사용하게 되는 것 같다.

Unit Testing

유닛 테스트(unit test)는 컴퓨터 프로그래밍에서 소스 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차다. 즉, 모든 함수와 메소드에 대한 테스트 케이스(Test case)를 작성하는 절차를 말한다. 이를 통해서 언제라도 코드 변경으로 인해 문제가 발생할 경우, 단시간 내에 이를 파악하고 바로 잡을 수 있도록 해준다. (wiki - https://ko.wikipedia.org/wiki/유닛_테스트)

 

E2E Testing

 End Point to End Point(종단) 테스팅은 사용자의 입장에서 서비스를 사용하는 시나리오를 만들고 테스트 하게 된다. 따라서 사용자가 보는 영역을 다루기 때문에, 유닛 테스팅이 불가능하다면 유저가 많은 서비스에서는 e2e test라도 챙겨야할 것 같다.

 주로 사용하는 라이브러리로는 Cypress, Jest, playwright등이 있고, 각 테스팅 도구의 장단점을 파악해 취지에 맞게 사용할 필요가 있다.

 

반응형