python pep8 unittest2

python - ¿Por qué los métodos unittest2 son camelCase si se prefieren names_with_underscores?



title python (1)

Aquí está la sección de PEP8 que describe cómo deben ser los nombres de las funciones:

Los nombres de las funciones deben estar en minúsculas, con las palabras separadas por guiones bajos según sea necesario para mejorar la legibilidad.

mixedCase está permitido solo en contextos donde ese ya es el estilo prevaleciente

¿Por qué no cambiaron los nombres de las funciones? Esto es especialmente relevante para Python 3 donde no se mantuvo la compatibilidad con versiones anteriores.


Desde el sitio web de unittest2 :

unittest2 es un backport de las nuevas características agregadas al marco de pruebas de unittest en Python 2.7. Está probado para ejecutarse en Python 2.4 - 2.7.

Para usar unittest2 en lugar de unittest, simplemente reemplace import unittest con import unittest2.

Es un poco confuso ya que de una versión 2 no se espera que sea un backport, sino un nuevo lanzamiento importante con (probablemente) nuevas características. De todos modos, la idea principal es crear un backport donde todo lo que el usuario tiene que hacer es cambiar la declaración de importación. Por esto no pudieron cambiar sus firmas de método.

Además, desde el sitio web de unittest :

El marco de prueba de la unidad Python, a veces denominado "PyUnit", es una versión en lenguaje Python de JUnit, de Kent Beck y Erich Gamma. JUnit es, a su vez, una versión Java del framework de pruebas Smalltalk de Kent. Cada uno es el marco de pruebas de unidad estándar de facto para su idioma respectivo.

Así que esto explica el parecido total entre los marcos y, probablemente, la notación de caso de camello.