¿Cómo puedo ejecutar una sola prueba desde un conjunto de pruebas de rails?
rake test ANYTHING
Parece que no ayuda.
ruby-on-rails
unit-testing
rake
artemave
fuente
fuente
Respuestas:
NOTA: Esto no ejecuta la prueba a través de
rake
. Entonces, cualquier código que tengaRakefile
NO se ejecutará.Para ejecutar una sola prueba, use el siguiente comando del directorio principal de su proyecto rails:
Esto ejecuta una única prueba llamada "nombre", definida en la clase MyModelTest en el archivo especificado. Test_name se forma tomando el nombre de la prueba, precediéndola con la palabra "test" y separando las palabras con guiones bajos. Por ejemplo:
Puede ejecutar ambas pruebas a través de:
y solo la segunda prueba a través de
fuente
0 tests, 0 assertions, 0 failures, 0 errors
. Rieles 3.0.7.-n "/good/"
. El escape de Shell siempre es divertido, por lo que tiendo a mantener expresiones regulares simples, pero es mucho más fácil que escribir el nombre completo de la prueba todo el tiempo.test/
carpeta. Por ejemplo, si quiero ejecutar la pruebaactivesupport/test/core_ext/array_ext_test.rb
, debería estaractivesupport/
primero.-n "/good/"
trabajó.Ejecute un archivo de prueba :
Ejecute una sola prueba en un archivo de prueba:
(Del comentario de @Puhlze.)
fuente
rake test TEST=tests/functional/accounts_test.rb TESTOPTS="-n '/paid accounts/'"
(encerrándolo/paid accounts/
con comillas simples)Para rieles 5:
fuente
bin/rails test test/models/user_test.rb:27
Gracias a @James, la respuesta parece ser:
Suponiendo que 22 es el número de línea de la prueba dada. Según la ayuda de rails:
Además, tenga en cuenta que su prueba debe heredar de ActionDispatch :: IntegrationTest para que esto funcione (Ese fue mi error):
fuente
En los carriles 5,
Utilicé esta manera para ejecutar un solo archivo de prueba (todas las pruebas en un archivo)
mira aquí https://stackoverflow.com/a/41183694/3626659
fuente
Para ejecutar una sola prueba en la suite Rails real:
fuente
La mejor manera es mirar directamente en las guías: http://guides.rubyonrails.org/contributing_to_ruby_on_rails.html#running-tests
fuente
Esa fue una tonta pregunta de medianoche mía. Rails imprime amablemente el comando que está ejecutando
rake test
. El resto es un ejercicio de cortar y pegar.fuente
Si desea ejecutar una sola prueba, puede ejecutarlas como un script Ruby normal
También puede ejecutar un conjunto completo (por ejemplo, ActiveRecord o ActionMailer) entrando
cd
en el directorio y ejecutándoserake test
allí.fuente
require File.join(File.dirname(__FILE__), '..', 'test_helper')
cd
sí funciona. Para ser claros (no estoy seguro si estoy leyendo mal esto, pero dijiste "archivos de prueba generados"), esto es para la biblioteca Rails en sí, no para un proyecto Rails.En mi situación
rake
solo funcionaTESTOPTS="-n='/sample/'"
:fuente
Primero, acceda a la carpeta de la biblioteca que desea probar (esto es importante) y luego ejecute:
fuente
Carpeta Rails
Tenga en cuenta que necesita cargar la carpeta apropiada: "activerecord / test" (donde tiene prueba)
fuente