본문 바로가기

테스트4

자바 - Junit5 Jupiter 를 이용한 단위 테스트 시작 1. 프로젝트의 main 폴더 아래에 test 폴더를 만든다. test 폴더 내부에 테스트 클래스를 만들지 않으면 정상적으로 junit 클래스를 import 해올수 없어 테스트 코드를 실행할수 없다. 2. @Test 어노테이션을 이용한 테스트 코드 메서드 작성 @Test void test(){ } 해당 어노테이션이 붙은 메서드는 main 클래스처럼 실행이 가능해진다. main 클래스가 그렇듯, 반환값은 존재하지 않는다. **** 만약 @Test 어노테이션의 import 클래스가 org.junit.jupiter.api.Test 가 아니라면 라이브러리를 추가해야 한다. gradle의 경우 다음의 코드를 작성해줘야 한다. dependencies { testImplementation 'org.junit.jupi.. 2024. 4. 3.
~~~ because "this.redisTemplate" is null - 스프링 REDIS 테스트 오류 스프링에서 redis를 적용한뒤 테스트 코드를 작성하고 돌렸을시 다음과 같은 오류가 발생한다. 그러나 본 어플리케이션 환경에서는 잘 돌아가기에 원인을 찾는데 시간이 오래 걸렸다. 원인: bean으로 등록된 객체들을 못찾아와 생기는 문제 해결: @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class RedisTest { .... } @SpringBootTest 어노테이션을 추가해 본래 어플리케이션에 추가된 설정을 테스트 환경에서도 똑같이 재현한다. 즉, redisTemplet 을 빈으로 등록한다. 다만 이를 사용하면 단위 테스트 속도가 느려질수 있다는 단점이 존재한다. 2024. 2. 4.
스프링부트: Junit을 이용해 테스트 하기 Test란? 개인이 간단하게 어떤 서비스를 구현한다고 하면 코드는 길어봐야 수천줄 정도 나오겠지만, 회사의 서비스는 만줄은 우습게 넘어갈 정도로 방대한 양의 코드가 동작한다. 헌데 긴 코드에 무턱대고 새로운 코드를 끼워넣으면, 그 코드가 어떻게 작동하는지 확인하기 위해 재실행하는데 리소스가 많이 들 뿐만 아니라, 오류가 발생할 경우 원인이 무엇인지 찾기도 어려워진다. 이런 일을 방지하기 위해 프로그램을 작은 단위로 쪼개서 옳바르게 동작하는지 미리 확인하는 것이 바로 Test다. 과거에는 개발자들이 직접 테스트 환경을 만들어야 했으나, 테스트를 필요로하는 개발자들이 늘어남에 따라 스프링부트에서는 테스트 환경이 내장되어 있기에 따로 할일은 없다. 방법(인텔리제이에서 만드는 방법) 1. 테스트하고 싶은 클래스.. 2023. 1. 27.
45일차 복습 스프링부트 복습. 집에서 복습하고 티스토리에 정리까지할 시간이 도저히 나지 않아서 먼저 복습부터 했다. 이번 설 연휴에 한번 티스토리를 정리하면서 대대적인 개편을 해봐야겠다. 기존의 스프링에서 사용자 편의성을 크게 증가시킨것이 스프링 부트다.따라서 기능적인 차이는 크게 없으나, 스프링 부트를 사용하는 것이 훨씬 편하다. 스프링은 자바에서 서버를 구동하고 코드를 실행하기 위한 프레임 워크다. 자바로 돌아가는 서버와 구동코드라고 생각하면 된다. 시작 https://start.spring.io/ 위 사이트에서 손쉽게 스프링부트 시작 셋팅을 할 수있다. 1. Maven vs Gradle 필요한 라이브러리를 가져오고, 빌드를 관리하는 툴이다. 과거에는 Maven이 주류였으나, 이제는 Gradle가 대세가 되었다... 2023. 1. 17.