Organizando Pruebas PHPUnit en Espacios de Nombres

Veo dos opciones para organizar las pruebas unitarias de PHPUnit en una jerarquía de espacio de nombres. ¿Cuáles son las ventajas / desventajas de estos dos enfoques? ¿Hay algún defecto obvio que no haya considerado que haría que una sea la mejor opción?

Considere una clase de muestra como\SomeFramework\Utilities\AwesomeClass:

Enfoque 1: Coloque cada clase de TestCase en el mismo espacio de nombres que la clase cubierta.

\SomeFramework\Utilities\AwesomeClassTest
VentajasDe acuerdo con el enfoque tradicional para escribir pruebas de PHPUnit.DesventajasMenos flexibilidad.Parece romper el principio detrás del uso de espacios de nombres: las pruebas no relacionadas se agrupan en el mismo espacio de nombres.

Enfoque 2: Coloque cada TestCase en un espacio de nombres que lleve el nombre de la clase cubierta.

\SomeFramework\Utilities\AwesomeClass\Test
VentajasProporciona una forma muy fácil / obvia de agrupar varias clases relacionadas de TestCase, por ejemplo, para diferentes suites de prueba.DesventajasPodría resultar en una jerarquía más profunda y compleja.

Respuestas a la pregunta(3)

Su respuesta a la pregunta