script online logo for firefox selenium rspec

firefox - online - Selenium:: WebDriver:: Error:: JavascriptError: los argumentos[0] no están definidos



selenium qa automation (2)

Entonces, esto es increíblemente básico, pero descubrí que cuando instalé Firefox 34 a través del dmg que aparece aquí , porque simplemente había arrastrado y soltado el icono de Firefox en la carpeta de Aplicaciones haciendo clic en "Sí, me gustaría sobrescribir la aplicación existente". "No me aseguré de que todos los archivos más nuevos de Firefox 35 no estuvieran disponibles para el uso de Selenium, del cual Selenium se sirvió sin que yo supiera qué versión elegía.

Simplemente desinstalé Firefox completamente de mi Mac arrastrándolo a la Papelera y reinstalé el dmg de Firefox 34.

NB Además, si se encuentra con este problema, cuando descargue Firefox 34, tiene que ir a Firefox> Preferencias> Avanzadas, hacer clic en la pestaña Actualizar y seleccionar "Buscar actualizaciones, pero permítame elegir si instalarlas" o "Nunca" buscar actualizaciones "para evitar que Firefox se actualice automáticamente a Firefox 35 y, por lo tanto, se confunda con su conjunto de pruebas de Selenium la próxima vez que las ejecute de nuevo.

Después de ver que este es un problema con Firefox 35, instalé 34 y ejecuté el bundle exec rspec y mis pruebas funcionaron perfectamente. Pero cuando intenté ejecutarlo de nuevo, de alguna manera se abrió la versión más reciente de Firefox cuando recibo el siguiente error nuevamente cuando ejecuto mi suite de prueba:

Selenium::WebDriver::Error::JavascriptError: arguments[0] is undefined

¿Hay alguna manera de garantizar que no tengo Firefox 35 instalado que Selenium está encontrando y abriendo de alguna manera? Sé que Firefox 34 es la versión de Firefox en mi directorio de Applications , pero no estoy seguro de que no haya una copia de la réplica de un Firefox más nuevo que Selenium esté launchy cuando se usa launchy .


Este es un problema conocido con la versión actual de selenio.

Como @ janders223 señala en un comentario sobre otra pregunta , la solución temporal para un proyecto de Ruby es usar la versión dev de la gema de selenium-webdriver .

Modifique su Gemfile para especificar la última versión de desarrollo (a partir de este escrito):

gem ''selenium-webdriver'', ''>=2.45.0.dev3''

A continuación, ejecute bundle install .