본문 바로가기

Posts/Python

파이썬을 이용한 클린 코드를 위한 TDD - 1장 기능테스트를 이용한 장고 프로젝트 설정

반응형

Chapter 1. 기능 테스트를 이용한 Django 프로젝트

TDD 학습 겸 정리를 위한 내용입니다.


1. 테스트가 없다면 아무것도 하지 마라

  • TDD의 접근법은 언제나 같습니다.
  • 테스트를 작성한 후 실행하고 예상 시나리오대로 실패하는지 확인하는 작업의 연속입니다.
  • 단계를 작게 나누어 조금씩 진행해 나갑니다.
1-1. 첫번째 기능테스트

프로젝트에서 selenium webdriver를 사용하기 위해 ChromeDriver를 사전에 설치합니다.

이후 PATH(/usr/local/bin) 경로로 ChromeDriver 파일을 이동시킵니다.

from selenium import webdriver
from selenium.webdriver.chrome.service import Service

# 처음엔 Chrome에 바로 path를 등록하였으나 DeprecationWarning 발생으로 인해 Service에서 선언 후 service 설정으로 변경
service = Service('/usr/local/bin/chromedriver') 
browser = webdriver.Chrome(service=service)
browser.get('http://localhost:8000')

assert 'successfully' in browser.title

셀레니움 webdriver를 이용하여 크롬브라우저를 실행시키면서 localhost:8000에 접속을 시도합니다.

실행 이후 브라우저의 타이틀이 "Django"와 같은지 확인합니다.


image

image

브라우저가 실행되고 테스트 실패가 발생한 것을 확인할 수 있습니다.

첫번째 테스트에 성공했으며 이는 다음 과정을 진행해도 되는 의미로 해석할 수 있습니다.

이후 "Django" -> "successfully"로 변경해서 실행하니 테스트를 성공할 수 있었습니다.



Reference

반응형