parameterized


  • 특정 함수에 대한 테스트 코드를 작성할 때, 파라미터로 어떤 인풋이 들어오면 결과가 어떻게 된다는 형식의 테스트 코드를 작성할 것이다.

  • 이러한 경우, 다양한 경우에 대해서 테스트를 해서 안전한지 테스트를 해봐야하는데 다음과 같이 확인할 수 있다.

사용 예제


class TestMathUnitTest(unittest.TestCase):
    @parameterized.expand([
            ("negative", -1, -2, -3),
                    ("integer", 2, 3, 5),
                        ])
    def test_add(self, name, a, b, expected):
            assert_equal(a + b, expected)
  • 간단하게 @parameterized.expand 라는 데코레이터를 사용하고, 리스트안에 튜플 형태로 케이스를 추가하면 된다.

  • 이는 순서대로, 테스트 코드 함수의 매개변수로 들어가게 된다.

참고 문헌

>> Home