Можно ли использовать Guard в сочетании с параллельными тестами?

Я искал способы ускорить свое тестирование, используя параллельные тесты в сочетании с моим текущим Guard настройка. Guard-Hydra кажется хорошим началом, но Гем Hydra больше не поддерживается, и автор направляет людей на parallel_tests вместо этого.

Параллельные тесты кажутся очень хорошими. Я заставил его работать в командной строке, используя обычную задачу rake, но я не могу сам написать соответствующее расширение защиты. Я был довольно удивлен отсутствием информации, доступной при поиске «guard parallel_tests». Наверняка я не единственный разработчик Rails с многоядерным ПК, который был бы заинтересован в ускорении своих тестов?


person Simmo    schedule 20.11.2012    source источник


Ответы (4)


Я реализовал эту опцию на guard-rspec

https://github.com/guard/guard-rspec/pull/150

person rafael.lima    schedule 15.01.2013
comment
Привет Рафаэль. Я протестировал его, и он работал нормально. Гораздо, намного быстрее! Надеюсь, что объединится. - person Simmo; 15.01.2013

Теперь в файле ReadMe Guard-rspec есть информация о том, как это сделать здесь https://github.com/guard/guard-rspec (смотрите вниз). На момент написания это выглядит следующим образом (обратите внимание на запятую в дополнительных аргументах)

rspec_options = {
  cmd: "bundle exec rspec",
  run_all: {
    cmd: "bundle exec parallel_rspec -o '",
    cmd_additional_args: "'"
  }
}
guard :rspec, rspec_options do
# (...)
person Mark Lakewood    schedule 13.03.2016

На самом деле, я изучал это недавно и не нашел решения. Это кажется довольно странным, потому что действительно умные люди сидят без дела в ожидании тестов, когда есть неиспользуемые ядра, которые простаивают.

Любой, кто сможет найти решение этой проблемы, внесет огромный вклад в сообщество Rails и Ruby.

person B Seven    schedule 21.11.2012

Я также реализовал эту опцию в guard-rspec:

https://github.com/guard/guard-rspec/pull/325

Также работал с мультиарендностью:

http://pr0d1r2.tumblr.com/post/121591540433/parallel-tests-with-multitenancy-on-guard

person Marcin Nowicki    schedule 15.06.2015