programing

python에서 assertEquals vs. assertEquals

goodcopy 2022. 9. 25. 23:07
반응형

python에서 assertEquals vs. assertEquals

와의 차이점이 있습니까?assertEquals그리고.assertEqual의기양양하여unittest.TestCase?

만약 없다면 왜 두 가지 기능이 있을까요?편의상?

사실 Python 2.6에서는assertEqual그리고.assertEquals에 대한 편리한 별칭입니다.failUnlessEqual송신원은, 다음과 같이 선언합니다.

# Synonyms for assertion methods
assertEqual = assertEquals = failUnlessEqual

Python 3에서는, 당신이 지적한 바로는failUnlessEqual는 명시적으로 권장되지 않습니다. assertEquals에는 다음과 같은 코멘트가 있습니다.- )

# Synonyms for assertion methods
# The plurals are undocumented.  Keep them that way to discourage use.
# Do not add more.  Do not remove.
# Going through a deprecation cycle on these would annoy many people.

결론은 Python 2.x에서는 원하는 것을 사용해야 한다는 것입니다만,assertEqualPython 3 용.

3.3 업데이트:26.3.7.1.1부터. 사용되지 않는 별칭:

과거의 이유로 일부 TestCase 메서드에는 폐지된1개 이상의 에일리어스가 있었습니다.다음 표에 올바른 이름과 사용되지 않는 에일리어스를 나타냅니다.

Method Name   | Deprecated alias | Deprecated alias
--------------+------------------+-----------------
assertEqual() | failUnlessEqual  | assertEquals
...

Python 3.x뿐만 아니라 Python 2.7 이후assertEquals는 폐지되었습니다.

Method Name            | Deprecated alias(es)
_________________________________________________________
assertEqual()          | failUnlessEqual, assertEquals

25.3.7.1.1부터. 사용되지 않는 별칭

이는 "단 하나의 명백한 방법"과 "전체 코드를 의미적으로 흐르게 하는 것" 사이의 긴장감이었다고 생각합니다.개인적으로 나는 책 읽는 것을 좋아한다.

failIf(some_condition)

에 걸쳐서

assertFalse(some_condition)

마음에 들었다

assertEqual(a, b)

다른 두 개에 걸쳐서assertEquals(a, b)문법에 방해가 된다.

"유일한 명백한 방법"이 앞으로 우선시되고 있다.

http://docs.python.org/library/unittest.html에는 assertEquals에 대한 언급이 없습니다.단, Test Case를 Import하여 "help(Test Case)"를 실행하면 목록이 나타납니다.그냥 편리함의 동의어인 것 같아요.

특정 질문에 대한 답변이 없는 것은 알지만, 검색 중에 여기에 도착한 경우:

using deprecated method assertEquals()

콜을 .assertEqual()로 변경하면 됩니다(equalS의 s를 삭제합니다).

언급URL : https://stackoverflow.com/questions/930995/assertequals-vs-assertequal-in-python

반응형