Handling-request-binding-exception in webflux
이번 글에서는 Spring Webflux + Kotlin 기술 스택에서 Request Binding Exeption에 대한 처리를 예제코드를 통해서 구현해 보도록 하겠습니다.Controller 처리Controller에서는 @Valid annotation을 사용해서 request Object 대한 validation을 체크합니다. @ApiOperation("xxx") @GetMapping("/main") suspend fun getMainDeals( @Valid retrieveMainDealRequest: RetrieveMainDealRequest ) = superDealGoodsService.readSuperDealMain(retrieveMainDealReq..
BackendTestingTools
전체 읽기 →성능 테스트를 위한 격리 - 시뮬레이션
시뮬레이션이전 글을 통해 테스트에 사용할 기록들을 캡처하여 확보했습니다. 이렇게 캡처한 내용을 바탕으로 mock service 를 띄워 이제는 시뮬레이션할 수 있습니다. 이제 테스트를 수행해 봅시다. hoverfly dashboard 에서 simulate 모드로 변경하거나 기록한 파일을 import 하여 hoverfly 를 재기동하면 테스트 환경으로 활용할 수 있습니다. 하지만 몇 가지 좀 더 수월한 테스트 조력을 원하였습니다. hoverfly 는 매우 디테일하게 기록하지만 실제 테스트에 적합한 동작은 덜 디테일하거나 추가적인 디테일이 필요할 수 있다.mocking 하는 서비스의 특징을 흉내 낼 때, 각 config 가 서비스 단위로 관리할 수 있는 게 편했다.hoverfly 는 가볍고 빠르다고 하지만 ..
InfraTestingTools
전체 읽기 →카카오페이
2022-12-09 · 3년 이상 전
[if kakao 2022] 사례로 보는 모바일 자동화 테스트를 통한 모니터링
if(kakao)2022 모바일 자동화 테스트를 통한 모니터링 사례 공유
MobileTestingTools
전체 읽기 →성능 테스트를 위한 격리 - 단순한 모델
성능 테스트와 반복 성능 테스트는 실제 부하를 받는 환경과 동일한 환경에서 이뤄질수록 의미가 높습니다. 하지만 정말 운영환경과 동일한 환경을 여러 목적을 위해 유지하는 것은 팀이나 기업의 사정에 따라 쉬운 일은 아닙니다. 그렇다고 운영 중인 시스템에 영향을 미칠 수 있는 환경에서 성능을 테스트해 보는 것은 아주 위험천만한 일입니다. 만약, 성능을 확인하기 위해 운영환경과 아주 동일한 환경을 마련하기가 어렵다면 우리는 어떤 방법을 쓸 수 있을까요? 관련 글 성능 테스트를 위한 격리 - 단순한 모델 성능 테스트를 위한 격리 - hoverfly 성능 테스트를 위한 격리 - 시뮬레이션 미니어처 성능 테스트는 반복 수행해보기에는 부담스럽기는 합니다. 하지만 성능 테스트를 자주 수행할 수 있고 그 부담을 줄일 수 ..
BackendDevOpsTesting
전체 읽기 →성능 테스트를 위한 격리 - hoverfly
격리 성능 테스트의 한 가지 곤란한 점은 그 영향력입니다. 다른 서비스나 테스트에 영향을 줄만한 부하는 모두를 곤란하게 합니다. 따라서, 가능하다면 테스트 영역을 격리하는 것이 좋습니다. 가장 좋은 격리는 전체 시스템을 테스트를 위해 한 벌 준비하는 것이지만 시스템이 커질수록 이는 부담입니다. 약간 현실적인 얘기를 하자면, 현실에서는 모든 팀이 테스트 용이한 배포본을 유지하지 않을 수도 있습니다. 이런 경우에도 격리가 가능할까요? 차선으로 선택할 수 있는 방식은 mock service 를 활용하는 것입니다. mock service 는 기능에 따라 해당 서비스의 latency 도 모사할 수 있습니다. 이러한 mock service 를 만드는 과정에 필요한 것은 흉내 낼 api 호출들을 마련하는 것입니다. ..
BackendTestingTools
전체 읽기 →Java Generic 을 파헤쳐보자 - 활용편
Java Generic 시리즈 마지막 포스팅입니다.이번에는 Java Generic 을 활용하는 여러 가지 상황들에 대해 살펴보겠습니다.이번 포스팅에서도 개념편, 심화편 에서 사용했던 예제를 활용해보겠습니다.public class Electronics { private String manufacturer; public Electronics(String manufacturer) { this.manufacturer = manufacturer; } public String getManufacturer() { return manufacturer; }}public class Tv extends Electronics { private String title; ..
BackendTestingTools
전체 읽기 →Java의 날짜, 시간에 대한 기본적인 정책
안녕하세요. Seller & SD Engineering 팀의 박명훈입니다. 오늘은 자바의 기본적인 Date와 Time API에 대해서 간략하게 정리합니다. Date와 Time API에 대해서 많이 사용을 하고 있으나 이에 대해 좀 더 상세하고 어떤 경우에 어떤 값을 쓰는지에 대한 고찰이 부족하다고 생각하여, 이에 대해 정리합니다. 기존 Java의 날짜 API의 문제.Java 8 이전에 사용하던 Date 관련 클래스는 Date, Calendar, SimpleDateFormat 등이 있었으나, 많은 문제가 있어 자바 8 버전 이후부터는 새로운 날짜 관련 API를 제공합니다.기존 클래스들의 문제는 다음과 같습니다. 1. 부적절한 클래스와 메서드 이름을 가집니다.Date 클래스의 경우, TimeStamp 방식으..
BackendTestingTools
전체 읽기 →카카오페이
2022-10-06 · 3년 이상 전
재택근무 환경에서 효율적인 코드 리뷰 방법: 팀 그라운드 룰 정하기
근무 형태가 변하고 개발자가 늘어남에 따라 좋은 코드 품질을 잘 유지하는 노력과 고민을 공유합니다.
CultureTestingTools
전체 읽기 →유용한 테스트 코드 작성 팁
안녕하세요. SmilePay Engineering 팀 문한국입니다. 저는 이번 포스팅을 통하여 Junit Test 코드 작성시 유용한 몇 가지 팁을 공유하려고 합니다. 우선적으로 꿀팁 테스트 코드를 작성하기 위한 적당한 코드가 필요했습니다. (TDD로 테스트 코드를 먼저 작성해보면 좋았겠지만 이해를 돕기에는 적당한 코드를 제공하고 순서대로 테스트 코드를 작성해 보는 게 도움이 되겠다고 생각했습니다.) 홀짝 게임 어떤 프로그램을 짜보는게 간단하면서 테스트 코드를 소개하기에 적당할까 고민하다가 저는 어릴 적 동네 문방구에서 했던 홀짝 게임이 떠올랐습니다. 게임의 룰은 간단합니다. 1. 사용자는 홀과 짝 중 하나를 선택하고 게임을 시작합니다. 2. 게임기에서는 랜덤으로 홀과 짝이 나옵니다. 3. 내가 선택한 ..
TestingTools
전체 읽기 →Spock in Maven
안녕하세요. 저는 지마켓에서 백엔드 시스템을 개발하고 있는 양승권이라고 합니다. 이번에 저희 시스템 중 Maven으로 개발되어있는 시스템들에 Spock framework를 적용한 경험을 공유하고자 합니다. 하고 싶었던 것 신규 프로젝트를 진행하게 되면서 새로운 기능을 개발할 일이 생겼는데, Maven 프로젝트 라서 그런지 Test 쪽이 좀 부족한 상황이었습니다. 그래서 이 참에 한번 이 프로젝트에 적용해보고 다른 Maven 프로젝트에도 적용해보자고 생각했습니다. 아래와 같은 내용을 해보고 싶은 내용들을 도출하였습니다. Spock library를 활용하여 좀 더 직관적인 테스트를 해보자. Spock의 Groovy로 Test code를 작성해보자. 프로필 별로 구분하여 단위/통합 테스트를 구분하여 수행해보자..
BackendTestingTools
전체 읽기 →카카오페이
2022-08-11 · 거의 4년 전
모델 서빙 최적화를 위한 프레임워크 선정과 서빙 성능 극대화하기
카카오페이에서 효율적인 모델 서빙을 위해 프레임워크를 도입한 과정과 프레임워크의 성능 최적화를 위해 테스트한 결과를 공유합니다.
AI/MLBackendTesting
전체 읽기 →데브시스터즈
2022-07-05 · 거의 4년 전
테스트 케이스 관리를 JIRA로 하자! : 웹서비스셀의 테스트 관리 툴 도입기
엑셀에서 벗어나 JIRA에서 제공하는 테스트 관리 툴을 이용해 테스트 케이스를 작성, 테스트 수행, 결과 리포트 작성, 이슈 관리까지 할 수 있는 방법을 알아봅니다.
BackendTestingTools
전체 읽기 →뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 3편 - 스펙별 단위 테스트
안녕하세요! 뱅크샐러드에서 iOS…
MobileTestingUX/UI
전체 읽기 →프론트엔드 개발자에게도 알고리즘 공부가 중요할까?
흔히 코딩 테스트로 일컬어지는 알고리즘 공부의 중요성을 프론트엔드 개발자의 관점에서 생각해봅니다.
CareerFrontendTesting
전체 읽기 →Sentry로 우아하게 프론트엔드 에러 추적하기
Sentry를 통해 프론트엔드에서 발생하는 오류를 신속하게 탐지하고 정확한 원인을 파악하여 빠르게 대응하는 방법을 알아봅니다.
FrontendTestingTools
전체 읽기 →뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 2편 - 화면 단위 통합 테스트
안녕하세요! 뱅크샐러드에서 iOS…
MobileTestingTools
전체 읽기 →뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 1편 - 통합 UI테스트
안녕하세요! 뱅크샐러드에서 iOS…
MobileTestingUX/UI
전체 읽기 →올리브영 iOS 테스트앱 자동배포하기
올-하! 💚 안녕하세요. 여러분! 올리브영에서 iOS 앱 개발을 담당하고있는 럭셔리💍 입니다. 오늘은 올리브영 iOS…
DevOpsMobileTesting
전체 읽기 →데브시스터즈
2021-08-02 · 거의 5년 전
고객 접점에서 ‘신뢰’를 만드는 사람들, QA 직군
전 세계 누구나 언제 어디서든 믿고 이용할 수 있는 서비스 ‘품질’은 과연 어떤 사람들의 손을 거쳐 탄생될까요? 서비스의 기획부터, 개발, 라이브, 운영까지 이르는 전 과정에서 함께 호흡하며, 고객과의 신뢰를 보다 두텁게 다져가는 사람들 ‘QA직군’을 만나 이야기 나눴습니다.
CareerCultureTesting
전체 읽기 →올리브영 안드로이드 테스트앱 자동배포하기
올-하! 💚 안녕하세요. 여러분! 올리브영에서 모바일 앱 개발을 담당하고있는 개발요정🧚♀️ 입니다. 오늘은 올리브영 안드로이드 Android…
DevOpsMobileTesting
전체 읽기 →