Recommend to load fixtures in `function _before()` and set `cleanup: false`?
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 30/100
- Tipo de issue
- Documentación
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- php
- Área
- documentation
Línea de trabajo
Comienza leyendo la documentación del módulo Doctrine en https://codeception.com/docs/modules/Doctrine y los ejemplos del issue que usan cleanup, _before(), runShellCommand() y doctrine:fixtures:load. Reproduce si las transacciones de cleanup ocultan los cambios de las pruebas a los comandos externos y, después, determina si la documentación debería recomendar cleanup: false y cargar fixtures antes de cada prueba.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I'm observing that with cleanup: true, running external commands with $I->runShellCommand('php bin/console ...'); isn't working. I'm guessing this is due to the transaction, which prevents external processes to "see" the database contents created/modified by the test. Can you confirm this?
If so, I would suggest to change the recommendation at https://codeception.com/docs/modules/Doctrine to cleanup: false, and show people how to load their fixtures in function _before():
$I->runShellCommand('php bin/console doctrine:fixtures:load --no-interaction --env=test');
IMO the currently recommended way to cleanup after each test doesn't work out, since for some tests it's necessary to disable the transaction (see above) - which ultimately leads to a mess.
So I'm figuring the best approach would be to just reload the fixtures before each test.
What do you think? How do you handle that?
- Lenguaje dominante
- PHP
- Estrellas
- 4
- Forks
- 2
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Codeception/module-doctrine
-
Dificultad 3/5 1-2 días Aptitud para principiantes 38/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Codeception/module-doctrine#2 · 1 comentario · 1 reacción ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 64/100
Codeception/module-doctrine#6 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
Todos los issues de Codeception/module-doctrine
Issues similares
-
customer-support needs-triage Platform(Default)
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
grokability/snipe-it#19767 ·
Los mantenedores suelen responder en 1 día
-
[Code Quality] SfxDownloader extract path has no destination-writability pre-check for cached zipsAbiertopriority:low type:refactor
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
crazy-goat/workerman-bundle#1052 ·
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
Los mantenedores suelen responder en 3 días