본문 바로가기
관리자

Programming-[Backend]/Python

[TIL] python 빈 리스트/None check, django test request값 안 변할 때 -> 테스트 메서드 이름 중복

728x90
반응형

 

1. python none check

 

==은 금지, a is None으로 체크!

 

a = [] 일때, a is None = False, isinstance(a, list) = True

 

a = None 일 때 a is None = True

 

 

2. django test request값 안 변할 때 -> 테스트 메서드 이름 중복을 확인하자

 

테스트 메서드 이름이 같으면 앞에 껄 실행해도 뒤에 나온걸로 override 된다.

 

아래 코드와 같이 같은 이름으로 test_update_something이라는 메서드가 중복되면, 위 쪽 코드의 data ={...} 내부의 값을 변경하고 테스트를 실행해도, 아래 테스트 메서드가 실행되면서 혼란을 겪을 수 있음!

    def test_update_something(self, *args):
        with self.subTest("SOMETHING 테스트!"):
            # given
			# 초기 세팅...
            # when
            response = self.client.patch(
                reverse(
                    "v3:SOMEWHERE",
                    kwargs={"pk": SOMETHING_id},
                ),
                data={
                    "status": SOMETHING_STATUS,
                },
            )
            
      def test_update_something(self, *args):
        with self.subTest("SOMETHING 테스트22222222!"):
            # given
			# 초기 세팅...
            # when
            response = self.client.patch(
                reverse(
                    "v3:SOMEWHERE",
                    kwargs={"pk": SOMETHING_id},
                ),
                data={
                    "status": SOMETHING_STATUS,
                    "color": "#FF0011",
                },
            )

 

728x90
반응형