TDD 6장 url

on under diary
1 minute read

04/24

TDD 6장 하는중… 교재에 있는 에러가 발생하지 않는다……

“이것은 Django 테스트 클라이언트가 뷰 함수에서 약간 다른 방식으로 동작하기 때문이다. 즉 도메인을 상대 URL에 추가하는 Django 스택을 사용하고 있기 때문이다. 2 단계 리디렉션 확인 방법 대신에 Django가 제공하는 헬퍼 함수를 사용하도록 한다.”

        self.assertEqual(response.status_code, 302)
        self.assertEqual(response['location'], '/lists/the-only-list-in-the-world/')

        -> 변경

         self.assertRedirects(response, '/lists/the-only-list-in-the-world/')

일단 요구하는 결과는 같다…일단 스킵. 테스트 클라이언트를 더 공부해보자.

추가. 마이그레이션 다루는 법을 더 익혀야함. (ex. fake)

궁금증!

self.assertRedirects(response, '/lists/%d' % (correct_list.id,))

마지막에 ‘,’(콤마)를 안찍어도 정상 작동하는데 꼭 ‘,’를 찎어야 하는 이유는??

기억하자!!!

TypeError: add_item() takes 1 positional argument but 2 were given
이번 프로젝트를 진행하면서 가장 많이 본 오류일것이다.
말 그대로 view 인수의 갯수가 안맞다는 것이다.

def add_item(request):
    pass
->
def add_item(request, list_id):
    pass

이렇게 인수를 맞추어 주면 된다.

tdd
comments powered by Disqus