Test

· Java
※ 테스트 코드는 왜 작성할까?서비스를 만들 때 개발 후 테스트를 한 번에 하면 되는데 왜 중간중간에 테스트 코드를 작성해야 할까?요즘은 이런 생각을 하시는 개발자분들은 없으실 거라 생각하지만..대부분에 작은 회사에선 2~3배에 리소스가 발생하기 때문에 테스트 코드를 작성하지 않는 곳이 많거나 개발자가 귀찮아하고 본인의 일을 줄이기 위해 작성하지 않는 분들도 많이 보았습니다... 하지만 테스트 코드는 개발한 코드를 추후에 수정하게 될 때 발생하는 사이드 이펙트를 줄일 수 있고 서비스에 안정성뿐만 아니라 개발자 간의 협업을 원활하게 하기도 합니다. 코드를 작성하는 것이 개발자의 능력이 아니라,가독성 좋고 안정성 있게 코드를 작성하고 효율적으로 관리할 수 있는 방법을 공부하고 이해하며 실제 구현을 하는 것이..
· Java
람다 테스팅 일반적으로 좋은 소프트웨어 공학자라면 프로그램이 의도대로 동작하는지 확인할 수 있는 단위 테스팅(unit testing)을 진행한다. 우리는 소스 코드의 일부가 예상된 결과를 도출할 것이라 단언하는 테스트 케이스를 구현한다. 보이는 람다 표현식의 동작 테스팅 일반적인 메서드는 이름이 존재하기 때문에 단위 테스트를 문제없이 진행할 수 있지만, 람다는 익명이므로 테스트 코드 이름을 호출할 수 없다. 따라서 필요하다면 람다를 필드에 저장해 테스트 할 수 있다. public class OrderProduct { private String name; private int count; private int price; .... } public static class Order { public stati..
· Spring
H2 Database란? H2DB는 자바 기반의 오픈소스 관계형 데이터 베이스 관리 시스템(RDBMS)이다. H2DB는 서버(Server) 모드와 임베디드(Embedded) 모드의 인메모리 DB 기능을 지원하고 디스크 기반 테이블을 또한 생성할 수 있다. 또한 브라우저 기반의 콘솔모드를 이용할 수 있으며, 별도의 설치과정이 없고 용량도 2MB(압축버전) 이하로 매우 저용량 이므로 매우 가볍고 빠르며, JDBC API 또한 지원하고 있다. SQL 문법은 다른 DBMS들과 마찬가지로 표준 SQL의 대부분이 지원된다. In-memory Database란? 데이터를 디스크에 저장하는 Mysql이나 Oracle과 같은 DBMS와는 다르게 데이터 스토리지의 메인 메모리에 설치되어 운영되는 방식의 데이터베이스 관리 ..
· JPA
엔티티의 동등성 비교 영속성 컨텍스트 내부에는 엔티티 인스턴스를 보관하기 위한 1차 캐시가 있다. 이 1차 캐시는 영속성 컨텍스트와 생명주기를 같이 한다. 영속성 컨텍스트를 통해 데이터를 저장하거나 조회하면 1차 캐시에 엔티티가 저장된다. 이 1차 캐시 덕분에 변경 감지 기능도 동작하고, 이름 그대로 1차 캐시로 사용되서어 데이터베이스를 통하지 않고 데이터를 바로 조회할 수도 있다. 영속성 컨텍스트를 더 정확히 이해하기 위해서는 1차 캐시의 가장 큰 장점인 애플리케이션 수준의 반복 가능한 읽기를 이해해야 한다. 같은 영속성 컨텍스트에서 엔티티를 조회하면 다음 코드와 같이 항상 같은 엔티티 인스턴스를 반환한다. 단순이 동등성 비교 수준이 아니라 정말 주소값이 같은 인스턴스를 반환한다. Member memb..
· Spring
사이드 프로젝트를 진행하면서 Test Results에 결과만 나와서 어떤 Test를 했는지 확인이 불가했다. 요게 Run Test를 할때 Gradle을 기준으로 Test를 진행하기 때문에 목록이 보이지 않는것이다. 기준을 IntelliJ IDEA로 변경하게 되면 Test를 진행한 목록이 잘나온다. Run tests using을 InteilliJ IDEA로 변경해주고 다시 테스트를 해보면 목록이 잘 나온다.
beekei
'Test' 태그의 글 목록