일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spock Spy
- HTTP란
- Spock Mock
- webpack
- 타입스크립트
- Vue+Typescript
- frontend
- 의존성주입
- vue store
- docker desktop 대체
- docker desktop 유료화 정책
- Spock Stub
- mock stub spy
- nuxtjs/composition-api buildModules
- mock stub
- 공짜로 Docker Desktop같은거 쓰기
- Mock vs Stub
- 트랜잭션 격리
- Docker Desktop 쓰고싶다
- Rancher Desktop설치
- ECMAScript
- Spock Mock Stub Spy
- Javascript
- 자바스크립트
- @Transaction propagation
- @Transaction isolation
- TypeScript
- DI
- enum
- TCP/IP
- Today
- Total
목록분류 전체보기 (63)
끄적끄적
Spock의 Mock, Stub, Spy에 대해서 정리해두려고 한다. Spock으로 테스트코드를 작성하며 mocking을 위해 Stub이나 Mock, Spy를 자주 사용하게 된다. jUnit을 위주로 짜던 사람을 Stub이 약간 생소할 수도 있다. Mock - 기대한 값을 받을 것으로 예상되는 객체를 의미하고(Stub과 유사), 테스트를 하는 함수가 잘 동작되는지 행위검증을 위해 사용된다. Stub - 테스트 중에 만들어지며 정의된 응답을 리턴한다.(정의되지 않으면 응답값은 없다.) Spy - 일부분만을 정의하여 사용한다. 나머지는 그대로 동작한다. 이렇게 알고 코드를 작성하다보면 Mock과 Stub이 제일 많이 헷갈리게 된다. 간단하게 차이라고 말하면 Mock은 Stub과 유사하지만 Mock으로 지정된..
회사에서 docker desktop 유료화 정책으로 Docker Desktop을 쓸수 없어서 불편해서 대안으로 쓰게된 Rancher Desktop 아마도 나와 같은 처지에 사람이 많을것으로 보여 기록해 두려고한다. Mac (Apple Silicon, Intel), windows, Linux 지원 Rancher Desktop Rancher Desktop Download : https://rancherdesktop.io/ 해당하는 기종에 맞는 버전 다운로드 설치시 주의사항(설치후 설정변경은 가능함) Container Runtime 설정을 dockerd(moby)로 설정 설치가 완료되면 별도의 설정없이 docker cli 사용이 가능하다. 별도 부가 기능(https://docs.rancherdesktop.io..
@Transactional이란 @Transactional 을 사용 하여 데이터베이스 트랜잭션에서 메서드를 래핑할 수 있습니다. 이를 통해 트랜잭션에 대한 전파, 격리, 시간 초과, 읽기 전용 및 롤백 조건을 설정할 수 있습니다. 트랜잭션 관리자를 지정할 수도 있습니다 . 트랜잭션 구현 세부정보 Spring은 트랜잭션의 생성, 커밋 및 롤백을 관리하기 위해 프록시를 생성하거나 클래스 바이트 코드를 조작합니다. 프록시의 경우 Spring은 내부 메소드 호출에서 @Transactional 을 무시합니다. 간단히 말해서, callMethod 와 같은 메소드가 있고 이를 @Transactional 로 표시하면 Spring은 호출된 @Transactional 메소드 호출 주위에 일부 트랜잭션 관리 코드를 래핑합니다..
nuxt 프로젝트에서 Cannot find module 'unplugin-vue2-script-setup/nuxt'와 같은 에러에 대한 대처 내용을 적어두려고 한다. 처음 이 에러가 났을때 unplugin-vue2-script-setup이 없는줄 알고 인스톨을 해보고 다시 실행해봐도 해결되지 않는것이다.. 패키지를 까보기 시작했다. 아래 부분에 대한 에러인데... 빌드 모듈시 패키지 모듈의 내부 API를 못가져오는건가 싶었다. 나의 해결 방법은 이랬다. npm i -D unplugin-auto-import 설치 nuxt.config.js의 buildModules에 '@nuxtjs/composition-api/module' 설정 변경 기존 buildModules: [ '..
Nuxt에서 로그인에 대한 리다이렉팅처리를 기록해두려고한다. 일단 나의 환경은 이렇다 jwt + cookie + nuxt 먼저 로그인 API를 만들어 로그인 성공시 token을 발급해주고, API에서 받은 토큰을 쿠키에 저장해야 한다. 그리고 nuxt middleware에서 토큰을 검사해 토큰이 없다면 로그인페이지로 리다이렉팅을 걸어주고, 토큰이 존재한다면 홈으로 보내주기로 한다. 먼저 로그인처리를 하자. 로그인 Submit로직은 기존 SPA에서 하던 방식과 많이 다르진 않다. private async login(): Promise { const request: SignInRequest = new SignInRequest(); request.userId = this.form.getFieldValue("u..
최근에 보안 취약점으로 문제가 있었던 log4j에 대해 어디를 업데이트해야되는지 기록해두려한다. 취약 버전은 2.0 beta9
개발을 하다보면 필연적으로 많이 듣게 되는.. 또는 많이 겪게 되는 것 중 하나가 가비지 컬렉터일 것이다. 예를들면 jvm out of memory 에러같은? 그래서 오늘은 가비지컬렉터에 대해 정리를 해둘까한다. 먼저 가비지 컬렉터가 뭔지 알아보자. 쓰레기 수집가.. 그렇다 가비지란 원래는 정리되었어야하는 또는 정리되지 않은 메모리를 쓰레기라고 생각하면 될꺼같다. 컬렉터는 수집기.. 한마디로 가비지 컬렉터란 정리되어있지 않은 메모리를 수집하여 해제시키는 것이다. 본격적으로 알아보자. 일단 전공과목이나 수업에서 공부할때 C언어에 대해 배울땐 직접 메모리를 해제 시켜줬었던걸로 기억한다. #include #include // malloc, free 함수가 선언된 헤더 파일 int main() { int num..
Junit을 이용해서 간단하게 몇가지 테스트코드 작성 예제를 기록해 두려한다. 일단 테스트코드의 필요성부터 알아보자 내가 무엇을 구현해야하는지 머리 속에 있는 또는 요구사항을 인/아웃풋에 대한 테스트코드로 미리 만들어둔다. 테스트코드를 작성함으로써 테스트 시에 번거롭게 직접 API를 호출해보거나 결과를 일일히 확인 안해봐도 된다. - 개발 -> 실행 -> API 호출 -> 결과값에 대한 직접확인 -> 수정 -> 반복.. - 위와같은 확인 방법을 개발 -> 테스트코드실행 -> 테스트코드 성공/실패 확인(간단해짐) 테스트코드를 잘 짜두면 아무래도 눈으로 직접확인하며 사람이 검증하는 것보다 확실하게 버그를 줄일 수 있다. 빌드 배포시에 테스트코드가 통과되야 배포가 되게 끔 설정해두면 서비스에 반영되기전 버그를..