Parece que hay pocos recursos sobre la gema fabrication
, y no pude encontrar una buena comparación de las características que lo distinguen de factory_girl
. A partir de las versiones fabrication-2.2.3
y factory_girl-4.0.0
, apenas puedo encontrar una diferencia. ¿Cómo se comparan estas gemas? ¿Qué puede hacer que fabrication
sea una mejor opción y por qué? ¿Han convergido ambos?Comparando Factory Girl con fabricación
Respuesta
Factory Girl tiene un concepto adicional de trait
que es realmente útil.
Otras características parecen más o menos parecidas.
Si desea elegir uno, tenga en cuenta el número de descargas:
podría ser útil cuando se mira en busca de ayuda /apoyo.
el doctor de la fábrica de la fábrica vive aquí: https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md – apneadiving
Gracias. Existe una clara diferencia de popularidad (https://www.ruby-toolbox.com/categories/rails_fixture_replacement), pero esto no significa necesariamente que uno sea mejor que el otro. Podría ser porque uno es más viejo, o es más convencional, o porque el otro acaba de madurar recientemente. –
El concepto de rasgos es interesante (https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md#traits), y aparentemente no está incluido en 'fabricación '. Gracias. –
Por lo que vale, creo que la fabricación es más rápida, y he experimentado menos errores con ella. Creo que la gran brecha de popularidad se debe principalmente a que la fabricación es mucho más nueva.
Gracias @Andrew. ¿Podrías por favor contar con menos errores? ¿Qué tipo de errores? –
Básicamente con FG me topé con errores difíciles de depurar con asociaciones, etc. de vez en cuando, y con Fabricación tuve mucho menos de eso. – Andrew
Comenzamos con Factory Girl, pero terminamos rasgándolo a favor de construir instancias de modelo de AR "reales"; una decisión que ahora estoy revisando.
Hasta ahora, me gusta el fabricante. Parece ser más fácil simular asociaciones donde absolutamente nada tiene que llegar a una base de datos real, que nunca se sintió del todo bien en FG. YMMV, por supuesto, y también está:
Nunca teorice antes de tener datos. Invariablemente, terminas torciendo los hechos para adaptarlos a las teorías, en lugar de teorías que se ajustan a los hechos. - Ley de Holmes de las teorías fácticas
+1: Cuando desee evitar el acceso a la base de datos, 'Fabricator.build (: factory-name)' solo funciona. He intentado utilizar tanto 'FactoryGirl.build' como' FactoryGirl.build_stubbed' sin éxito: parece confundirse con las asociaciones de modelos y termina golpeando la base de datos. – rsenna
Este tema se trata aquí: https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md. Agregue el gancho a ActiveSupportNotifications y podrá ver si su prueba está llegando al DB. Tienes que tener cuidado de cómo estructuras tus fábricas para obtener build_stubbed para evitar golpear el DB. Definitivamente funciona bien. – justingordon
Hace poco hice un perfil de Fabricator vs factorygirl porque tenía curiosidad acerca de los comentarios de cumplimiento mencionadas por otros. También encontré Fabricator a ser un poco más rápido (pero sólo cuando se utiliza asociaciones):
https://ksylvest.com/posts/2017-08-12/fabrication-vs-factorygirl
Teniendo en cuenta los tiempos de ejecución estaban tan cerca, yo prefiero Fabricator sobre factorygirl debido a la creación de asociaciones de forma predeterminada propagar acumulación vs crear (en vez de tener que especificar una estrategia).
- 1. Factory Girl y has_one
- 2. Crear usuarios en Factory Girl con OmniAuth?
- 3. error Factory Girl con relación has_many
- 4. Argumentos adicionales para Factory Girl
- 5. Atributos dependientes en Factory Girl
- 6. Fábricas dependientes en Factory Girl
- 7. Secuencias Factory Girl sin incrementar
- 8. Rails 3.2, RSpec, Factory Girl: NameError: constante no inicializada Factory
- 9. ¿Cómo usar Cucumber and Factory Girl juntos?
- 10. Factory Girl: Asignación automática de objetos principales
- 11. Rieles: Factory Girl no puede secuenciar
- 12. Silenciando el registro de Factory Girl
- 13. Cómo crear asociaciones has_and_belongs_to_many en Factory Girl
- 14. Factory Girl has_many múltiple a través es
- 15. Asociaciones de Factory Girl con Discrepancia de Spork
- 16. Factory Girl crear asociación con el objeto existente
- 17. cómo definir la asociación polimórfica con factory girl
- 18. Creando instancias con atributos únicos usando Factory Girl
- 19. Prueba del controlador con RSpec, Devise, Factory Girl
- 20. ¿Error de fábrica duplicado con rspec y factory girl?
- 21. ¿Existe un framework como Factory Girl para Java?
- 22. ¿Cómo puedo definir varios objetos asociados usando Factory Girl?
- 23. ¿Cómo usar Pry dentro de Factory Girl Rails?
- 24. Factory Girl vs. User.create: ¿cuál es la diferencia?
- 25. Setup Factory Girl with Test :: Unit and Shoulda
- 26. ¿Cómo puedo usar Factory Girl en db/seeds?
- 27. ¿Cómo aleatorizar correctamente los datos con seed.rb usando Factory Girl y random_data?
- 28. Probando una devolución de llamada before_save con Rspec y Factory Girl
- 29. Factory Girl con teclas de atributo de cadena en lugar de símbolos?
- 30. Factory/Abstract Factory confusion
Supongo que podría elegir una respuesta :) – apneadiving
@apneadiving Lo deseo, pero todas las respuestas son subjetivas o incompletas. Ojalá alguien pudiera publicar una comparación objetiva. –