Как запустить один контекстный тест musta в ruby ​​Test :: Unit framework

StackOverflow https://stackoverflow.com/questions/1642034

Вопрос

Обычно я могу протестировать обычный метод Test :: Unit, используя следующий синтаксис командной строки для метода " delete_user_test ":

ruby functional/user_controller_test.rb -n delete_user_test

Теперь, когда я использую плагин musta с Test :: Unit, я пытаюсь использовать ту же технику, как показано ниже:

... 
context "Deleting a User" do
  should "remove user from user table" do
    ...
  end
end

Затем я пытаюсь запустить одиночный тест следующим образом:

ruby functional/user_controller_test.rb -n "test: Deleting a User should remove user from user table"

Это не работает. Кто-нибудь знает, как я могу запустить одиночные контекстные тесты, используя musta и Test :: Unit. У меня есть несколько разных тестов в одном тестовом файле, и я хочу запустить только один, используя TDD, не дожидаясь запуска всех тестов.

Это было полезно?

Решение

Это работает для меня:

ruby functional/user_controller_test.rb -n "/Deleting a User/"

Просто поместите некоторую достаточно длинную строку из вашего имени контекста в регулярное выражение.

Другие советы

Использование полного имени теста с пробелом в конце, похоже, тоже работает:

ruby -Itest 
     functional/user_controller_test.rb 
     -n "test: Deleting a user should remove user from user table. "

Объединение этих двух подходов хорошо для меня; с использованием -I test и регулярных выражений.

ruby -Itest functional/user_controller_teset.rb -n "/remove user from user table/"
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top