Los rieles y el tiempo de carga de rspec no mejoraron con spork

He seguido las instrucciones de instalación para spork-rails

No pude conseguir bundle exec spork para ejecutar y obtuve el error

/opt/local/bin/spork:23:in `load': cannot load such file -- /opt/local/lib/ruby1.9/gems/1.9.1/gems/spork-1.0.0rc3/bin/spork (LoadError)
from /opt/local/bin/spork:23:in `<main>'

Estoy en el grupo /opt/local/lib/ruby1.9/gems/1.9.1/gems/spork-1.0.0rc3/bin/spork y sus permisos son 711.

Running sudo bundle exec spork funciona pero cuando corro bundle exec rspec spec todavía tarda más de 8 segundos en cargar

Estoy corriendo:
ruby 1.9.3
rieles 3.2.3
cuchara 1.0.0rc3
spork-rieles 3.2.0
Rspec 2.10.1
OSX 10.7.4
Instalado con macports

ACTUALIZACIÓN He desinstalado macports ruby ​​y reinstalado con rvm

Esto me está permitiendo hacer bundle exec sport sin sudo, pero bundle exec rspec spec todavía está tardando +8s en ejecutarse

preguntado el 12 de junio de 12 a las 13:06

¿Lo instaló con Sudo Bundle Install (nunca debería hacer eso)? -

No pero bundle install me pide mi contraseña de sudo, ¿es eso tan malo? -

@msaspence Sí. Nunca deberías necesitar usar sudo para comandos relacionados con gemas si está utilizando RVM o rbenv. -

desde que desinstalé macports ruby ​​y ruby ​​gem y reinstalé con rvm no lo he hecho, sin embargo, rspec aún no se conecta a spork -

3 Respuestas

cuando ejecuta rspec, debe pasar el argumento "--drb" rspec --drb especificación/

Respondido el 14 de junio de 12 a las 16:06

También puedes echar un vistazo a girar, que hace lo mismo pero es bastante más fácil de configurar y menos intrusivo.

Respondido el 12 de junio de 12 a las 14:06

Girar es mucho más fácil, de 8 segundos a 3 segundos épicos, no lo marcaré como la respuesta a menos que alguien más pueda ofrecer una idea de la pregunta original, pero esto definitivamente ha hecho el trabajo por mí: msaspence

Además de la respuesta de YaBoyQuy, puede agregar la --drb opción en tu .rspec y olvídalo Aquí el contenido de mi .rspec archivo:

--drb
--colour
--order=random

(Tenga en cuenta que he añadido el --order=rand opción que hace que rspec ejecute pruebas en orden aleatorio, lo cual es bueno porque sus pruebas no deberían depender unas de otras)

Respondido 18 Jul 12, 08:07

--order=rand es un pequeño consejo genial que no conocía, ¿hay efectos secundarios negativos como un impacto en el rendimiento? - msaspence

@msaspence por lo que he visto (el comando de tiempo) no hay diferencia, o al menos no se nota tanto. Por cierto, es una buena práctica ejecutar las pruebas en orden aleatorio porque si fallan de formas "extrañas" o solo a veces (y otras veces pasa), significa que dependen de otras pruebas y deberías escribirlas mejor. - Aldo 'xoen' Giambelluca

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.