전체 글

전체 글

    [강의 후기] Practical Testing: 실용적인 테스트 가이드 후기

    TDD 스터디를 마치고 실제 회사에서는 어떤 방식으로 테스트를 진행하는지 궁금증을 가지던 중에 인프런에 테스트에 대한 신규 강의와 수강평이 좋아 수강을 하게 되었다. 해당 글은 내가 테스트 강의를 들으면서 공감이 되는 부분을 중점으로 기술한다. 테스트는 왜 필요할까? 강사의 테스트 생각 : 귀찮다. 나의 생각 : 고려해야 할 것이 많다. QA에 대한 테스트 커버할 수 없는 영역이 발생한다. 경험과 감에 의존한다. 늦은 피드백이 발생한다. 유지보수의 어려움 소프트웨어 신뢰도가 낮아진다. 테스트를 하는 이유 빠른 피드백 자동화 소프트웨어 신뢰도 상승 테스트 코드를 작성하지 않을 경우 변화가 생기는 매순간마다 발생할 수 있는 모든 Case를 고려해야 한다. 변화가 생기는 매순간마다 모든 팀원이 동일한 고민을 ..

    [DB] 데이터 플랫폼 사업단의 Data 이야기

    회사에서 진행하는 사내 기술 세미나를 참석하게 되어 이를 정리하기로 하였다. 2022년 가트너의 IT 전략 기술 트렌드 성장 가속 부문 제너레이티브 AI : 제너레이티브 AI는 텍스트 설명을 기반으로 이미지를 생성하는 인공지능 프로그램입니다. 오토노믹 시스템 : 주위 환경에 맞춰 스스로 관리하는 시스템이다. 변화 형성 부문 컴포저블 애플리케이션 : 비즈니스 중심의 모듈식 컴포넌트로 구성되어 있는 어플리케이션을 뜻한다. 의사결정 인텔리전스 : 상황에 따라 스스로 일을 결정해 처리함으로써 결정을 돕는 인공지능이다. 신뢰 구축 부문 데이터 패브릭 : 분산 데이터에 대한 액세스를 최적화하고 데이터 소비자에게 셀프 서비스 제공을 위해 지능적으로 큐레이션 및 오케스트레이션 할 수 있는 데이터 관리 아키텍처이다. 사..

    [TDD] 테스트 범위와 종류

    [TDD] 테스트 범위와 종류

    테스트 범위 하나의 기능이 올바르게 동작하려면 컨트롤러, 서비스, 모델과 같은 자바 코드와 프레임워크, 설정에 문제가 없어야 할 뿐 아니라 브라우저에서 실행되는 자바스크립트 코드, HTML과 CSS 등이 정상 동작해야 한다. 또한, DB의 테이블도 올바르게 생성해야한다. 기능 테스트와 E2E테스트 기능 테스트(Functional Testing)는 사용자 입장에서 시스템이 제공하는 기능이 올바르게 동작하는지 확인한다. 이 테스트를 수행하려면 시스템을 구동하고 사용하는데 필요한 모든 구성요소가 필요하다. 기능 테스트는 사용자가 직접 사용하느 웹 브라우저나 모바일 앱부터 시작해서 데이터베이스나 외부 서비스에 이르기까지 모든 구성 요소를 하나로 엮어서 진행한다. 기능 테스트는 끝에서 끝가지 올바른지 검사하기 때..

    [Cloud] AWS, Azure, GCP에 대한 비교

    [Cloud] AWS, Azure, GCP에 대한 비교

    들어가며 클라우드 서비스 세계적으로 유명한 곳은 AWS, Azure, Google이 존재한다. 그 외에도 국내에는 Naver Cloud Flattform이 존재한다. AWS는 Amazon Web Service로 아마존에서 제공하고 Azure는 Microsoft, Google Colud Platform은 구글에서 제공한다. AWS AWS는 가장 많은 시장 점유율로 33%를 차지하고 있어 Private Cloud 서비스 분야에서 타 서비스 대비 장점을 갖고 있다. AWS의 IaaS는 Elastic Compute Cloud(EC2)가 그 예이며 메인 컴퓨팅 서비스. 프로세서, 스토리지 네트워크, 운영체제 등 폭넓고 세분화된 스펙을 제공한다. EC2의 경우, 가장 많이 사용해봤기에 어떠한 장단점이 있는지 파악하..

    [GDSC] CICD 세션 결말 해석

    [GDSC] CICD 세션 결말 해석

    GDSC(Google Developer Student Club)에서 개발 기술에 대해서 하나씩 선정하여 세션을 진행하게 되었다. 나는 CICD에 대해서 진행하였고 CICD의 필요성과 수동 배포 방식의 워크플로우와 비교하여 설명하였다. [Session] CICD / 한규범 CI/CD 의미 CI ⇒ Continuous Intrgration (지속적 통합) CD ⇒ Continous Delivery (지속적 전달) CD ⇒ Continuous deployment (지속적 배포) Continuous Intrgration 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미 gdsc-mju.tistory.com 나의 CICD 세션의 목표는 툴에 의존하기 보다는 CICD를 도입하면 개발방식에 대해서 변화를 가져오는..