для 1)
Я использую Rspec для модульного и функционального тестирования.
Я использую Cucumber для интеграционного тестирования. Огурец использует капибару или селен. Мне нравится Cucumber, потому что он позволяет мне писать тесты с клиентами. Они чувствуют причастность и, таким образом, иногда дают больше подробностей об их ожиданиях.
Selenium может использоваться как отдельное приложение для тестирования вашего веб-приложения прямо в браузере.
Существует множество других инструментов, это действительно вопрос выбора. Как вы сказали, приборы больше не используются, Factory Girl - один из лучших способов создания наборов тестовых данных.
Для 2)
Вам не нужны все эти инструменты, конечно. Вы даже можете написать свои тесты с помощью нативных помощников Rails.
Но они предоставляют удобных помощников, которыми вы можете воспользоваться. Так что получите тот, который вы предпочитаете. Некоторые, например, Cucumber, имеют расширения (например, Pickle), чтобы предоставить еще больше помощников.
Для 3)
Сила Rspec, Cucumber, Selenium (тех, кого я знаю) в том, что они могут использоваться для тестирования любого приложения.
Мне любопытно выслушать мнение других относительно тестирования Ajax.