반응형
Unittest의 assertEqual 및 iterables-내용 만 확인
두 개의 반복 가능한 객체의 내용이 같은지 확인하기 위해 unittest에 '괜찮은'방법이 있습니까? 나는 많은 튜플, 목록 및 numpy 배열을 사용하고 있으며 일반적으로 유형이 아닌 내용 만 테스트하고 싶습니다. 현재 나는 단순히 유형을 캐스팅하고 있습니다.
self.assertEqual (tuple (self.numpy_data), tuple (self.reference_list))
얼마 전에이 목록 이해를 사용했습니다.
[self.assertEqual (*x) for x in zip(self.numpy_data, self.reference_list)]
그러나이 솔루션은 실패 할 경우 단일 값만 인쇄하고 다른 길이의 참조 및 데이터 (zip 함수로 인해)에 대해 실패하지 않기 때문에 typecast보다 약간 열등 해 보입니다.
파이썬 3
- 당신이 경우 상관 없어 내용의 순서에 대해, 당신은이 assertCountEqual를 (A, B) 방법
- 콘텐츠의 순서에 관심이 있다면 assertSequenceEqual (a, b) 메서드가 있습니다.
Python> = 2.7
- 당신이 경우 상관 없어 내용의 순서에 대해, 당신은이 assertItemsEqual를 (A, B) 방법
- 콘텐츠의 순서에 관심이 있다면 assertSequenceEqual (a, b) 메서드가 있습니다.
언제든지 TestCase 클래스에 고유 한 어설 션 메서드를 추가 할 수 있습니다.
def assertSequenceEqual(self, it1, it2):
self.assertEqual(tuple(it1), tuple(it2))
또는 2.7이 어떻게 정의했는지 살펴보세요 : http://hg.python.org/cpython/file/14cafb8d1480/Lib/unittest/case.py#l621
시퀀스의 항목 순서에 관심이있는 것 같습니다. 따라서 assertItemsEqual
/ assertCountEqual
는 당신을위한 것이 아닙니다.
Python 2.7 및 Python 3에서 원하는 것은 self.assertSequenceEqual
. 이것은 항목의 순서에 민감합니다.
반응형
'Nice programing' 카테고리의 다른 글
CSS만으로 Div를 페이지 상단으로 수정하는 방법 (0) | 2020.11.21 |
---|---|
최신 GHC에서 더 이상 사용되지 않는 DatatypeContext : 이유는 무엇입니까? (0) | 2020.11.21 |
파일을 잠근 사람을 찾기위한 명령 줄 도구 (0) | 2020.11.20 |
자바 서블릿 내에서 404 오류를 어떻게 던지나요? (0) | 2020.11.20 |
/ 파일 유형에 대해서만 xcopy에서 제외 (0) | 2020.11.20 |