Recientemente hemos empezado a utilizar el indicador Ember.testing no documentado en nuestras especificaciones de jazmín que efectivamente desactiva la característica de ejecución automática runloop. Hemos descubierto que esto requiere que seamos un poco más explícitos sobre el código de ajuste manual en los ejecutables, pero también nos ha dado más estabilidad en nuestras especificaciones, ya que pone de relieve los problemas en la forma en que hemos escrito las especificaciones y ayuda a documentar cuándo las uniones son importantes para el código bajo prueba.¿Se recomienda establecer Ember.testing = true para las pruebas unitarias?
¿Existe una línea oficial sobre el uso de esta función? Parece que ha tenido un impacto bastante positivo en nuestra aplicación, pero sospecho que la mayoría de la gente no lo sabe.
La estabilidad parecía provenir principalmente de los desarrolladores que se ven obligados a pensar en el ciclo de ejecución, cómo se relaciona con el código que se está ejecutando y las afirmaciones que se realizan en ese código. Una gran parte de los internos de Ember dependen de que haya un bucle de ejecución actual o lanzan una excepción, por lo que al no tener un runloop de ejecución automática, es fácil ver dónde una especificación debe envolver las llamadas al código de la aplicación. –
Tuvimos una serie de fallas intermitentes debido a las especificaciones que a veces pasaron en lugares donde creo que deberían haber fallado constantemente. Establecer Ember.testing = true garantiza que estas especificaciones siempre fallen. –