Web

Web

[FastAPI] pytest의 개념과 활용

pytest의 개념과 활용개념테스트테스트란 소프트웨어 프로그램이 요구 사항에 맞게 동작하는지 확인하는 과정이다. 버그를 발견하고, 코드 변경이 기존 기능에 영향을 주는지 검증하는 역할을 한다.단위 테스트 (Unit Test) : 개별 함수나 메서드를 테스트기능 테스트 (Function Test) : 특정 기능이 올바르게 동작하는지 검증통합 테스트 (Integration Test) : 여러 모듈이 함께 동작하는지 테스트E2E 테스트 (End To End Test) : 전체 시스템을 사용자 관점에서 테스트회귀 테스트 (Regression Test) : 기존 기능이 변경 없이 유지되는지 확인단위/통합/E2E 테스트에 대해 자세히 확인하고 싶다면, 링크 참고pytestpytest는 Python의 대표적인 오픈소..

Web

[FastAPI] OAuth2와 JWT를 활용한 인증 구현

OAuth2와 jwt를 활용한 인증 구현개념OAuth2 (Open Authorization 2.0) OAuth2 (Open Authorization 2.0)은 계정 정보를 직접 공유하지 않고 서비스 간 정보를 안전하게 공유할 수 있도록 한다. 또한 비밀번호 공유 없이 권한 부여를 수행할 수 있으며, Access Token을 통해 API 요청에 대한 인증을 처리한다.Resource Owner : 사용자, 데이터를 소유하는 주체Client : 애플리케이션, 사용자를 대신해 API 요청을 수행Authorization Server : OAuth2 인증을 수행하고 토큰을 발급하는 서버Resource Server : API 요청을 처리하는 서버 (FastAPI)Access Token : 인증된 사용자만 API를 사..

Web

[FastAPI] DB Migration을 위한 alembic 개념과 활용

DB Migration을 위한 alembic 개념과 활용개념Migration (마이그레이션)마이그레이션은 데이터, 소프트웨어, 시스템 또는 인프라 등의 기술적 자원을 다른 시스템으로 이동하는 과정을 의미한다. 데이터 마이그레이션 : DB, Storage에서 데이터를 한 위치에서 다른 위치로 이동하는 프로세스스키마 마이그레이션 : DB의 테이블 추가, 수정, 삭제 등 DB 구조 변경을 적용하는 프로세스소프트웨어 마이그레이션 : 기존의 시스템을 새로운 버전이나 다른 플랫폼으로 이전하는 프로세스시스템 마이그레이션 : 기존의 하드웨어나 운영체제를 새로운 하드웨어, 운영체제로 이전하는 프로세스인프라 마이그레이션 : 네트워크, 서버, 스토리지 등 IT 인프라를 한 위치에서 다른 위치로 이동하는 프로세스FastAPI..

Web

[FastAPI] 의존성 주입 (Dependency Injection) 개념과 활용

의존성 주입 (Dependency Injection) 개념과 활용개념의존성 (Dependency)A 함수 또는 클래스에서 B 기능 사용할 때, A는 B에 의존 (Dependency)한다고 이야기할 수 있다. 하나의 컴포넌트 (함수, 클래스)가 다른 컴포넌트에 의존하는 경우 해당 의존성을 해결하는 것이 중요하다.send_email (A) 함수는 email_service (B) 객체에 의존만약 email_service가 없다면, send_email() 함수는 동작할 수 없음def send_email(email_service): email_service.send("Hello!") # send_email()은 email_service에 의존의존성 주입 (Dependency Injection, DI)의존성..

기억에 남는 블로그 닉네임
'Web' 카테고리의 글 목록