분류 전체보기 126

EC2 서버 세팅 시 참고사이트

1. EC2 서버 키페어로 접속 AWS EC2 서버 접속하기 (맥북OS m1) • 안녕하세요~ 이전에 운영하던 블로그 및 GitHub, 공부 내용을 정리하는 Study-GitHub 가 있습니다! • 네이버 블로그 • GitHub • Study-GitHub • 🐔 📎 맥OS에서 AWS EC2 서버 접속하기 안녕하세요~ 현재 zzang9ha.tistory.com 2. EC2 서버 nginx 설치 AWS EC2 서버에 nginx 설치하기 0. Intro 이번 글에서는 AWS의 EC2 서버에 nginx 경량 웹 서버를 설치하는 과정을 알아보겠다. 왜 nginx를 사용하는지는 다른 글에서 다루기로 하고, 방법 중심으로 간단하게 기록하겠다. 참고로, 리눅 chjune0205.tistory.com 3. EC2 서버 ..

AWS 2023.01.03

int 와 long

코딩 테스트를 하다보면 코드 문법상에는 문제가 없어 보이지만 error 가 나는 경우가 있다. 아래 코드가 그와 같은 경우이다. 숫자로 이루어진 문자열 t와 p 가 주어질 때 … 프로그래머스의 크기가 작은 부분 문자열 문제를 참고하시길 바람 1 ≤ p의 길이 ≤ 18 p의 길이 ≤ t의 길이 ≤ 10,000 t와 p는 숫자로만 이루어진 문자열, 0으로 시작 안함 처음엔 문제를 읽고 전부 int 타입으로 코딩을 해서 제출 했다. → 몇몇 테스트에서 RuntimeError 발생! 이유를 찾는데 한참이 걸렸다… 제한사항의 1번에 p가 1~18까지가 아닌 p의 길이가 18까지 였다. int 는 최대 10자리 까지만 사용이 가능하다.. 따라서 p를 파싱하는 변수는 모두 long 으로 갔어야 한다...

JAVA 2022.12.27

BDD 스타일 Mockito API

BDD는 잘짠 TDD 와 같다. BDD는 말 그대로 행동 주도 개발이다. → 사용자의 행위까지 생각하고 테스트하며 개발한다. 테스크는 Given-When-Then 이라는 양식에 맞춰서 사용한다. 아래는 테스트 코드는 BDD 방식으로 변경한 예시이다. /* Given */ when(memberService.findById(1L)).thenReturn(Optional.of(member)); when(studyRepository.save(study)).thenReturn(study); // when 을 BDD 스타일로 변경하면 given을 사용 given(memberService.findById(1L)).willReturn(Optional.of(member)); given(studyRepository.save..

JAVA 2022.12.26

Mock 객체 확인

verify(검증) 메소드를 이용하여 특정 메소드가 실행이 됐는지, 몇번 실행됐는지, 실행이 안됐는지 등 검증을 해볼 수 있다. verify 예제 @Test public void pratice(){ StudyService studyService = new StudyService(memberService, studyRepository); assertNotNull(studyService); Study study = new Study(10, "test"); Member member = new Member(); member.setId(1L); member.setEmail("eunjia190@gmail.com"); when(memberService.findById(1L)).thenReturn(Optional.of..

JAVA 2022.12.15

Mock 객체 stubbing

모든 Mock 객체의 행동 Null 을 리턴한다.( Optional 의 경우에는 Optional.empty 리턴 ) Primitive 타입은 기본 Primitive 값 콜렉션은 비어있는 콜렉션 void 메소드는 예외를 던지지 않고 아무런 일도 발생하지 않는다. stubbing 예제 : when 을 사용하여 findById에 1을 호출하면 member 값을 return 받게 작성해보았다 @Test void createStudyService(){ StudyService studyService = new StudyService(memberService, studyRepository); assertNotNull(studyService); Member member = new Member(); member.setI..

JAVA 2022.12.15

현재 작업물을 임시저장하고 pull 받기

git stash (임시저장) 만약 내가 작업하고 있는 와중 커밋을 하지 않고 다른 브랜치로 넘어가고 싶다면? → git stash 사용! // 임시저장 git stash // 임시저장하면 커밋 하지 않고 다른 브랜치로 이동 가능 git switch master // ... 필요한 작업 후 다시 원래 브랜치로 돌아와서 stash 풀어주기 // 임시저장 된 리스트 git stash list // 임시저장 풀기 git stash pop

Git 2022.12.14

Mockito

mockito 는 mockito-core 와 mockito-junit-jupiter 두가지 의존성을 추가해줘야하는데 애초에 spring boot 프로젝트로 생성을 하면 자동으로 주입되어 있다. 직접 추가하려면 maven repository에서 추가! mockito는 쉽게 말해서 가짜 객체를 만들어 준다고 생각하자! 현재 MemberService는 interface 만 있고 구현되어있진 않다. 이럴때 test code 작성시 MemberService 에 가상의 Mock 인스턴스를 직접 만들어서 사용해야한다. @ExtendWith(MockitoExtension.class) // 이 어노테이션이 있어야 제대로 Mock이 동작한다. class StudyServiceTest { @Mock MemberService..

JAVA 2022.12.14

JUnit5 Assertions

1. assertAll 만약 assertAll을 안쓰면 assertEquals이 실패하면 assertTrue는 실패인지 성공인지 모른다. 따라서 한번에 테스트 결과를 확인하고 싶으면 assertAll로 묶자! → 보통은 여러개 테스트중 하나만 실패해도 다음 테스트를 진행할수 없지만 assertAll은 실패해도 다음 테스트를 진행 할 수 있다.(에러를 한번에 볼수가 있다.) @Test @DisplayName("스터디 만들기") void create_new_study() throws Exception { Study study = new Study(-10); assertAll( () ->assertNotNull(study), () ->assertEquals(StudyStatus.DRAFT, study.getS..

JAVA 2022.12.14

JUnit5 기본 annotation

JUnit5 test에 사용할 수 있는 기본 annotation @Test @BeforeAll / @AfterAll : 모든 테스트 실행 전 혹은 실행 후 딱 한번씩만 실행됨 @BeforeEach / @AfterEach : 각각 테스트들 마다 실행 전 / 실행 후에 매번 실행됨 @Disabled : 여러개의 테스트 메소드중 제외 하고 싶은것에 붙여줌 package me.whiteship.inflearnthejavatest; import org.junit.jupiter.api.*; import static org.junit.jupiter.api.Assertions.*; class StudyTest { // junit5 부터 public 이 안붙어도됨 @Test void create() throws Exce..

JAVA 2022.12.14