https://docs.influxdata.com/influxdb/v2.1/api/ InfluxDB v2.1 API documentation docs.influxdata.com 예시) Write data - Postman 으로 데이터 전송 필수 입력사항 Query Parameters - bucket : 데이터를 저장하고자 하는 bucket 명 - org : bucket 생성할 때 입력한 org 명 Header Parameters Authorization : bucket 을 생성하면 API 키가 생성되는데, 앞에 "Token "+API 키 입력해야 함. (Token을 붙히지 않아서 고생 쫌 했음...) body line protocol에 맞춰서 데이터 전송 ※아래와 같은 데이터 타입을 사용함
influxdb를 테스트하고 있어서, 생성한 measurement를 삭제해야 하는데... 괜찮은 방법을 찾지 못했다. influx에서 column을 삭제하는 방법으로 measurment를 drop하는 방법이 있는데... https://docs.influxdata.com/flux/v0.x/stdlib/universe/drop/#tables drop() function | Flux 0.x Documentation drop() functionThe drop() function removes specified columns from a table. Columns are specified either through a list or a predicate function. When a dropped column i..
※InfluxDB 2.1 https://docs.influxdata.com/influxdb/v2.1/query-data/get-started/query-influxdb/#1-define-your-data-source Query InfluxDB with Flux | InfluxDB OSS 2.1 Documentation docs.influxdata.com 모든 Flux 쿼리는 아래와 같은 단계가 필요하다. 1. data source 2. time range 3. data filters 입력) test1,sensor=humi_temp_sensor humidity_value=30,temperatrue_value=15 1642101292000000000 //Syntax [,=[,=]] =[,=] [] 쿼리) _..
spring boot validation을 적용하여 Exception 처리를 하고 있다. Exception 처리는 ControllerAdvice 를 이용하여 ExceptionHandler를 통해 공통적으로 작업하고 있는데, 평소와 같이 한 것 같은데 문제가 발생하였다. 문제 RestController에서 post 요청의 content를 자동으로 객체로 변한하도록 구현하였다. 그리고 변환받는 객체의 클래스에 있는 property에 validation 을 설정하였다. 그러나 단위테스트를 수행하는 중에 구현해놓은 ExceptionHandler에 진입하지 않고 계속해서 다른 에러를 뱉었다. BindException......음? 분명히... @Valid 에 대한 Excetion 클래스는 MethodArgumen..
작성한 코드에 대한 테스트를 수행하고 싶어, 제대로 알지 못한 상태에서 @SpringBootTest 를 붙여 테스트를 진행하였다. 이것저것 영상이나, 블로그를 보면서 @SpringBootTest를 여기저기 붙이길래, 아~ @SpringBootTest를 붙이면 테스트 되고 이게 Spring에서 제공하는 단위테스트 구나~ 라고 막연하게 생각하며 사용했었다. 그런데 TDD에 관심을 갖게되면서, @SpringBootTest는 주로 통합테스트에 사용하는 것으로, 이유는 모든 Spring이 관리하는 모든 Bean을 등록하여 테스트를 진행하기 때문임을 알게 되었다. 즉, 작은 단위에 기능테스트만 진행하기에는 모든 Bean을 등록하는 @SpringBootTest는 비용이 크다는 것이다. 그래서 해당 기능만을 테스트 하..
TDD에 관심을 가지고 공부 중에 있다. 그래서 개발하면서 JUnit5을 이용한 테스트를 진행하고 있는데, private 메소드에 대한 테스트 방법이 어려워 이것저것 찾고 있다가 정리한다. 그러나! private 메소드를 테스트 하는 것은 antipattern 이라고 한다. 나름대로 정리해봤는데, 내 생각에는 우리가 테스트를 하는 이유에 있는 것 같다. 테스트를 하는 이유는 이 기능이 외부 다른 기능들과 맞물려 있을 가능성이 크고, 변경이 있을 경우 비용이 크게 들어가기 때문에 충분한 테스트를 통해 검증을 해야한다. 하지만 private 메소드의 경우, 해당 메소드는 오로지 동일한 클래스 내에서만 사용되기 때문에, public 메소드를 테스트하면서 자동적으로 private 메소드에 대한 테스트도 이루어져..
기능에 대한 단위테스트를 진행하는데 있어, 다른 기능들이 물려있는 경우, stub 방식으로 대신 제공하여, 필요한 기능만 집중으로 테스트할 수 있다. ※ Stub : 대역( 실제 구현을 대신하여 사용할 구현 ) 종류에 하나로 구현을 최대한 단순화시킨 것이다. 테스트 기반의 개발을 해보고 싶어 요즘 TDD에 대한 공부를 하고 있다.. 이전에도 혼자서 테스트해본다고 이것저것 건드렸는데... 뭐든 잘 모르고 쓰면 문제가 발생한다. 본 글은 Mockito를 이용하여 단위테스트를 진행하면서 발생한 문제에 대한 해결법을 작성한 것이다. 상황 Controller 클래스의 특정 기능을 테스트하였다. 해당 기능은 Service 의 특정 기능에 의존해 있다. 그렇기 때문에 BDDMockito 에서 제공하는 given을 이..
본 내용은 "박은종의 객체지향 설계를 위한 디자인패턴 with 자바" 강의를 듣고 나름대로 정리한 내용이다. Singleton 패턴 클래스에 대한 인스턴스가 단 하나만 존재하며, 해당 인스턴스에 접근할 수 있도록 제공하는 패턴 Singleton 패턴 적용 가능한 상황 - 인스턴스가 여러 개일 경우에 문제가 발생할 수 있는 것은 인스턴스를 하나만 생성하여 공유할 수 있도록 함. - 각기 다른 값을 가질 필요가 없을 때 ( Ex. new A("james"), new A("albert") 등 property 값이 여러개일 필요가 없을 때 ) - 개수가 정해져 있는 경우 ( Ex. db connection pool ... ) Singleton 패턴 특징 - 유일하게 존재하는 인스턴스로, 접근을 통제할 수 있다...