Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

207
Visualizações
¿Por qué las pruebas unitarias de Symfony 3 se quitaron del paquete real?

Realmente nunca escribo ninguna prueba porque generalmente tengo que trabajar con presupuestos bajos. Así que normalmente solo borro los archivos de demostración. Sin embargo, noté que el directorio de prueba se movió de /src/MyBundle/Test en Symfony 2 a /tests en Symfony 3 y me pregunto por qué.

Los paquetes son, o al menos pensé que lo son, componentes potencialmente "descomponibles" en una aplicación. Esto significa que siempre es posible ejecutar/trabajar con el mismo paquete en otro "tiempo de ejecución" de Symfony con poco o ningún esfuerzo.

Por lo tanto, mover el directorio de pruebas de su paquete relacionado al directorio raíz no tiene ningún sentido para mí. Hacer que una pieza independiente de software sea dependiente/incompleta sin motivo alguno. De hecho, me hace sentir que no entendí completamente el concepto de paquetes en Symfony.

También noté que los tutoriales de Symfony comenzaron hace unos años para obligar a sus usuarios a mover sus plantillas a /app/Resources. Cuando lo aprendí, tenían las plantillas en sus paquetes relacionados, lo que me parece mucho más limpio. ¿Por qué debería mover algo afuera si ya tengo todo incluido (!) en un solo directorio. Tal vez tenga algunos problemas con la traducción, pero en alemán, un "paquete" es 1 sola unidad. Si divides un paquete, obtienes 2, pero no la mitad.

Por lo general, veo Symfony como un tiempo de ejecución configurado para mis paquetes, por lo que no toco nada fuera de /src además de composer.json, AppKernel o archivos de configuración.

Bueno, puedo admitir que el paquete puede reaccionar de manera diferente según su entorno, pero las pruebas unitarias ni siquiera deberían depender del contexto si las hice bien.

Incluso si ve el AppBundle como uno especial relacionado con el contexto, sigue siendo un estilo de desarrollo inconsistente cuando algunos archivos se pueden encontrar allí, mientras que otros se pueden encontrar en un lugar completamente diferente. Al menos el AppBundle no debería ser un paquete entonces.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Pruebas

Creo que este cambio se realizó solo para sacar las pruebas de la carpeta src real. Es una especie de mejor práctica en otros lenguajes de programación como JAVA, porque las pruebas no son parte de su código fuente real. Las pruebas tampoco se incluyen en el artefacto final (tome composer.phar como ejemplo) para minimizar su tamaño.

La estructura del directorio de prueba se compone de directorios de paquetes con sus pruebas relacionadas, por lo que todavía tiene pruebas separadas para paquetes:

pruebas/
├── AppBundle/
│ ├── Entidad
│ │ └── PruebaUsuario.php
│ ├── Servicio
│ ├── Otro
│ └── Etc.
├── Otro Paquete/
│ ├── Controlador
│ └── Entidad
└── EtcBundle/

Plantillas

En lo que respecta a las plantillas, es mucho más fácil para los diseñadores encontrar todas las plantillas necesarias cuando se encuentran en un solo directorio.

De todos modos, esos son mis dos centavos.

over 4 years ago · Santiago Trujillo Relatório

0

Si revisa los archivos composer.json, podría ver que el directorio Pruebas se carga (automáticamente) solo para el entorno de desarrollo, por lo que en un sistema de producción no tiene estos archivos cargados también. Como ejemplo:

 "autoload": { "psr-4": { "": "src/" }, "files": [ "app/AppKernel.php" ] }, "autoload-dev": { "psr-4": { "Tests\\": "tests/" } },

Esto acelerará la carga automática en su aplicación.

Espero que esto ayude

over 4 years ago · Santiago Trujillo Relatório

0

Es porque en Symfony 3 hay una separación entre paquetes de aplicaciones y paquetes reutilizables:

Hay dos tipos de paquetes:

  • Paquetes específicos de la aplicación: solo se utilizan para compilar su aplicación;
  • Paquetes reutilizables: destinados a ser compartidos entre muchos proyectos.

Este artículo trata sobre cómo estructurar sus paquetes reutilizables para que sean fáciles de configurar y ampliar. Muchas de estas recomendaciones no se aplican a los paquetes de aplicaciones porque querrá que sean lo más simples posible.

Puedes obtener más información en las mejores prácticas de paquetes en Symfony .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda