웹 개발
새 프로젝트 검증은 로그인 흐름부터 본다
전체 기능을 다 테스트하기 전에 가장 기초적인 인증 흐름부터 확인하면 문제의 원인을 훨씬 빠르게 찾을 수 있다.
새로운 기능을 만들거나 배포한 후 검증할 때, 어디서부터 시작해야 할까. 많은 개발자는 눈에 띄는 기능부터 테스트한다. 하지만 그건 실수다.
인증이 제대로 되는지부터 확인하기
모든 웹 애플리케이션의 기초는 사용자 인증이다. 로그인, 세션, 토큰, 권한 확인 등이 제대로 작동하지 않으면 나머지 기능도 의미가 없다.
- 새 사용자 회원가입이 되는가
- 정상적인 로그인/로그아웃이 작동하는가
- 로그인 후 쿠키나 토큰이 제대로 설정되는가
- 로그아웃 후 이전 상태가 제거되는가
권한 확인이 제대로 작동하는가
로그인이 되었다고 해서 모든 페이지에 접근할 수 있는 건 아니다. 관리자 권한이 필요한 페이지, 작성자만 수정할 수 있는 콘텐츠 등 권한 검증이 정확해야 한다.
# 보통 다음과 같은 순서로 확인한다
# 1. 로그인 상태에서만 접근 가능한 페이지 확인
# 2. 권한에 따른 페이지 접근 제한 확인
# 3. 로그아웃 후 다시 접근 불가 확인
로컬과 운영 환경의 차이 기록하기
로컬에서는 모든 권한이 있을 수도 있다. 또는 개발용 설정으로 인해 실제와 다른 동작을 할 수도 있다. 현재 환경의 상태를 명확히 기록해두는 게 중요하다.
- 테스트에 사용한 계정의 권한 레벨
- 로컬 개발 서버의 설정 (디버그 모드, 권한 무시 등)
- 실제 배포된 서버의 환경 변수
한 가지씩만 바꾸고 테스트하기
여러 기능을 동시에 변경했다면, 문제가 생겼을 때 어디서 났는지 찾기 어렵다. 한 가지를 바꿀 때마다 인증 흐름을 다시 테스트하는 게 좋다.
결국 인증은 모든 웹 애플리케이션의 기초다. 화려한 UI나 고급 기능보다 이 부분이 견고해야 나머지가 신뢰할 수 있다.