분류 전체보기196 난수 테스트는 어떻게 해야할까? (면접 코드 리팩토링) 이번 면접 라이브 코딩 중에는 이런 문구가 있었다. 테스트 환경을 구성하면 더 좋습니다. 테스트 환경을 구성하지는 못했지만, 그래도 기능 구현을 하면서 테스트를 어떻게 작성하면 좋을지를 계속 고민했는데, 그 과정에서 문제가 되는 사항이 있었다. 참가자의 오답률에 따라 오답이 발생합니다. 간단하게 요구사항을 설명하자면, 뭔가 게임을 하는데 참가자가 오답을 말할 확률이 존재하고 이 확률에 따라 정답 또는 오답 처리를 해야한다는 것이다. 나는 아래와 같이 코드를 작성했다. public class Player { private final String name; private final double wrongAnswerRate; Player(String name, double wrongAnswerRate) { t.. 2024. 2. 1. <2/1> ㅇ운의 사나이 행운인가, 불운인가. 아무튼 어떤 운이긴 하다. 어제는 한 스타트업과 면접 기회가 있었다. HR솔루션 서비스를 제공하는 회사였는데, 학부생 시절엔 여러 프로젝트의 팀장직을 맡고 동아리에서도 회장직을 수행했으며, 군시절엔 또래상담병을 역임하고, 이후 부트캠프에서 백엔드 팀장을 맡으며 결국 모든 조직의 핵심이 인적 자원임을 여실히 느꼈기에 해당 서비스가 굉장히 매력적으로 다가왔다. 특히 요즘같이 세대 간, 성별 간 갈등이 심각한 세상에서는 더더욱 인적 자원 관리의 중요성이 높아지지 않았을까. 그래서 왜 행운인가 불행인가를 잘 모르겠냐 하면, 이번이 네 번째 면접인데 네 번의 면접이 모두 다른 타입으로 진행되었다. 기술 관련 질문과 테이블 설계를 진행해보았던 첫 번째 면접, 팀 프로젝트내에서 커뮤니케이션과 팀.. 2024. 2. 1. [1/24 TIS] OAuth 2.0 적용에 따른 테스트 코드 수정 OAuth를 적용하면서 Spring Secuirty의 filter chain에 OAuth와 관련한 친구들이 추가되었다. 문제는 이게 테스트 코드에도 영향을 준다는 점이었다. 기존의 API계층에 대한 테스트 코드에는 SecurityAutoConfig 파일을 제외하는 설정이 되어있었다. Spring Security를 테스트하고 싶으면 아예 Integration test를 진행하고, API계층에서는 들어온 DTO가 출력 결과와 같게 출력되는지만 확인하고 싶었기 때문이다. 그런데 OAuth가 추가되면서, 잘 돌아가던 테스트가 돌아가지 않게 되었다. 아래는 에러 코드인데, 너무 길어서 첫 줄만 따왔다. Consider defining a bean of type 'org.springframework.security.. 2024. 1. 25. Pull Request 028. Spring Security + OAuth2.0 로그인 적용하기 최근 국내 서비스 중에 OAuth 로그인을 지원하지 않는 서비스가 있을까? 아마 거의 없을 것이다. 이번 프로젝트에도 OAuth2.0을 사용한 로그인 방식을 적용하고자 한다. OAuth 로그인은 쉽게 말해 '사용자 인증을 다른 기관에 맡기는' 로그인 방식이다. 운영중인 서비스의 서버에 저장된 사용자 정보가 아니라, 다른 신뢰할만한 서비스에 저장되어있는 사용자 정보를 가져와서 사용하는 방식이다. 물론, 해당 과정에서 자체적으로 토큰 발급 등의 인증 / 인가 시스템을 이용하기 위해서는 받아온 사용자 정보를 자체 서버에 저장해야한다. 이번 프로젝트에는 구글, 카카오, 네이버의 소셜 로그인을 제공할 예정이다. 현재 구글과 카카오를 구현 완료하였으며 이번 포스팅에서는 해당 과정을 다룬다. Spring Securi.. 2024. 1. 23. [1/19 TIS] 바뀐 Shell, 몰랐던 나, 환경변수 설정에 애먹기 Mac OS Catalina 버전 이후로 기본 Shell이 bash -> zsh로 바뀌었다. 내 맥북은 아마 그 전에 만들어졌나보다. 기본 shell로 bash를 사용하고있었다. 프로젝트에 OAuth 로그인을 구현하려고 하면서, 드디어 환경변수들을 적용할 일이 생겼다. bashrc파일을 마구마구 수정하고 프로젝트를 빌드하는데, 아무리해도 인텔리제이에서 시스템 환경변수를 읽어오지를 못했다. 그러던 중, 아래 문구에서 힌트를 얻었다. The default interactive shell is now zsh. To update your account to use zsh, please run `chsh -s /bin/zsh`. For more details, please visit https://support... 2024. 1. 19. 이전 1 2 3 4 5 6 7 ··· 40 다음 반응형