미새문지

크래프톤 정글 week13, day98 - 잔디심기, 작성페이지 이미지 첨부 수정, jest 본문

크래프톤 정글/TIL

크래프톤 정글 week13, day98 - 잔디심기, 작성페이지 이미지 첨부 수정, jest

문미새 2024. 4. 15. 00:40
728x90
백준
10162
파이썬
브론즈3 전자레인지
import sys
input = sys.stdin.readline

t = int(input())
a, b, c = 300, 60, 10

aCount = t // a
t %= a

bCount  = t // b
t %= b

cCount = t // c
t %= c

if t == 0:
    print(aCount, bCount, cCount)
else:
    print(-1)

처음에 작성페이지에서 이미지 파일 첨부한 것을 글 작성 중간에 끼워넣고 싶었는데 실현하기엔 어떻게 해야될지 생각도 안나고 아직은 실력이 부족해서 못할 것 같다. 그래서 파일 첨부를 하면 글 작성 카테고리 옆에 이미지의 이름이 띄워지게 만들어놨는데, 세진이가 굳이 그럴 필요가 있냐 내용 위에다 이미지를 첨부해라 해서 가져오는 데이터를 이름이 아닌 url로 받아와 첨부한 이미지가 작성할 내용 위에서 보여지게끔 하기로 했다. 오히려 이게 깔끔하고 좋은 것 같다.


프론트엔드의 단위 테스트 학습을 위해 잠깐 확인해봤는데 총 4가지 방식이 있는 것 같다.

테스팅 트로피라고 하는 거 같은데 

테스팅 트로피

E2E 테스트 중심의 개발코드를 현장에 맞게 새롭게 구상한 테스팅 개념이라고 한다.

static 테스트

  • 구문 오류. 나쁜 코드, 스타일 등을 검증
  • ex) ESlint.Typescript

Unit 테스트

작은 단위를 떼어 내어 분리된 환경에서 테스트

복잡한 알고리즘이 제대로 동작하는지 확인

Mocking 필요

작성 비용 낮음, 실행 속도 빠른

ex) Jest

Integration 테스트

어플리케이션의 여러 부분들이 통합되어 제대로 상호작용 되는지 테스트

주로 단위 테스트보다 큰 범위(페이지)의 테스트를 의미

앱의 모든 기능이 제대로 동작한다는 확신을 줄 수 있다.

ex) Jest, RTL, Enzyme

E2E 테스트

실제 사용자가 사용하는 것과 같은 조건에서 전체 시스템을 테스트

API 서버, DB등의 외부 서비스들을 모두 사용하여 통합된 시스템을 테스트

비용도 많이 들고 속도도 느리다.

ex) Cypress, Selenium

 

이런식으로 되어있는데 본인이 학습할 건 Jest 즉, Unit테스트와 Integration 테스트다

확인해보니 리액트를 npx create-react-app으로 폴더 째 설치하면 나오는 app.test.tsx 같은 test 파일에서 작동시킨다.

확인 결과

이런식으로 현재 폴더에 있는 모든 test 파일을 테스트할 수 있고 개별적으로 할 수도 있다.

이 부분은 좀 더 학습해보고 설명할 예정이다.

 

학습 시간 : 14 ~ 26시

728x90