테스트란?인수 테스트 : 사람이 직접 사용해 보면서 준비된 체크리스트를 체크자동 테스트 : 미리 짜여진 코드를 돌려서 결과값과 예상값을 비교. DB를 사용하는 경우에는 H2를 활용해 RDB를 InMemory에 잠깐 띄워서 테스트함.@ExtendWith(SpringExtension.class)를 사용해서 테스트용으로 스프링을 띄움 ![img.png](img/002_Using_H2_Test.png) TDD1. RED -> 깨지는 테스트를 먼저 작성한다.일부러 실패하는 테스트를 만듦. (테스트를 돌려서 실패하는 것까지 확인하기.) 2. GREEN깨지는 테스트를 성공시킨다. 3. BLUE리팩토링한다.복잡한 코드에서는 파괴적일 수 있음. 하지만, 이전 단계에서 그린을 확인했으니 상관없음. TDD는 이 과정을 무한..
상황레거시 코드가 많음. 서비스는 운 좋게도 매년 성장했음.개발자가 2배 늘었지만, 개발 속도는 1.2배 정도에 그쳤음.(커뮤니케이션 비용 등) 서비스 장애를 우려해서 배포를 신중하게 했음.회귀 버그가 발생할 가능성이 생겼고, 이를 두려워 하게 됨.회귀 버그 : 잘 동작하는 기능이 다시 버그가 발생하는 상황테스트 자동화 도입으로 회귀 버그를 줄이고자 했음테스트 자동화로 인해 커버리지를 높일 수 있음.외부 API 연동, DB 연동 등 쉽지 않은 테스트 케이스를 마주하게 됨.mockito나 H2를 활용해서 처리함.서비스는 단순한데, 이 단순한 서비스 로직 확인을 위해 테스트를 작성하는 일로 인해 더욱 복잡하게 되어 버림.스프링 부트와 H2를 사용하니 100개가 넘는 테스트를 하는 데 2분이 넘게 걸리게 됨...
MySQL을 혼자 사용할 때와 달리 팀원들과 함께 사용하거나 root 계정의 위험성으로 사용자를 추가하고 몇몇 데이터베이스 스키마를 관리할 필요가 있을 때가 있습니다. 이 때 사용자를 추가하고 권한을 부여하기 위해 작업해 보겠습니다. 우선 MySQL 접속에 접속해야겠죠? 1. MySQL 접속 mysql -u root -p 2. 사용자 추가 -- 사용자 추가(비밀번호 없음) CREATE USER '사용자ID'@'접속_허용_ip'; -- 사용자 추가하면서 비밀번호 설정 CREATE USER '사용자ID'@'접속_허용_ip' identified by '비밀번호'; -- 모든 ip에서의 접속을 허용 CREATE USER '사용자ID'@'%' identified by '비밀번호'; 접속 허용 ip에는 원하는 ip..
2차원 리스트 전체 값 중에서 최대, 최소 값을 구할 때 흔히 max(리스트)를 넣어본 경험이 있을 겁니다.하지만, 원하는 값이 나오지 않습니다.보통 최대, 최소, 정렬 등 계산이 들어가는 함수는 대부분 2차원 배열 내 각 첫 번째 인자부터 계산이 됩니다.따라서 전체 계산한 값을 구하기 위해서는 다른 방법을 사용해야 합니다.data = [ [0, 3, 2], [0, 1, 2], [2, 1, 0], [3, 2, 1]]print(max(data)) #[3, 2, 1]print(min(data)) #[0, 1, 2]sort(data)print(data) #[[0, 1, 2], [0, 3, 2], [2, 1, 0], [3, 2, 1]]위 예시에서 max 함수는 data라는 2차원 배열 내의..
알고리즘 문제를 풀다 2의 몇 제곱인지를 구해야되는 경우가 생겼습니다.하지만 검색을 해도 잘 안나와서 좀 당황했습니다 ㅋㅋ그렇다고 다른 문제를 풀 때 다시 쓸 수도 있는데 for문을 돌리려니 좀 그렇더라구요.그러다가 생각해보니 로그를 쓰면 된다는 걸 깨달았습니다.그래서 생각난김에 정리하려고 블로그에 지수와 로그 부분 정리합니다 ㅎㅎ 거듭 제곱 계산# 2의 3제곱 계산print(2**3)>> 8# pow(a,b) a의 b제곱, pow(a,b,c)를 하면 pow(a,b)%c와 동일하게 계산됩니다.print(pow(2,3))>> 8# math.pow(a,b) a의 b제곱 pow()함수와 차이는 부동 소수점 형태로 반환한다는 겁니다.print(math.pow(a,b))>> 8.0 제곱근 계산(루트)print(2..
저번에 코딩 테스트 사전 테스트 후기를 올렸었죠. 1월 28일에 알고리즘 코딩 테스트를 쳤으나 이제야 후기를 올리네요..ㅎㅎ 결론적으로 말하면 원하는 만큼의 성적을 받지는 못했습니다..!ㅎㅎ 저는 20, 21년도(막 비대면 온라인이 시작되고 온라인 코딩테스트가 들어온 시기)에 코딩 테스트를 공부하기 시작했고, 그에 맞는 공부를 했어요. 하지만 온라인 코딩 테스트 초기라서 그런지 지금과 좀 많이 다른 느낌이 있었어요. 문제 트렌드도 꽤나 다른 느낌을 받았구요. 간단하게 이번에 코딩 테스트를 치고 느낀 점은 1. 그래프 문제가 필수가 아닌 느낌 2. 디버깅 없이 print()로 확인하는 것은 동일 3. 공식 document는 사용 가능(이게 바뀐 것 중에 제일 좋았어요.) 4. 캠 필수(이젠 캠이 거의 필수..
- Total
- Today
- Yesterday
- 해커톤
- 15기
- 알고리즘
- 글또
- it 동아리
- 회고
- 10기
- server
- spring boot
- 연합 동아리
- 글로컬
- 중간발표
- test
- 인프런
- 파이썬
- 육.지.행
- 스터디
- 모니터링
- AWS
- tdd
- 서버
- 백엔드
- Loki
- python
- 프로그래머스
- 리빙랩
- 육지행
- 디프만
- Grafana
- 6팀
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |