Возможно ли создать полноценное SPA приложение на React.js?
React.js это не только V из MVC, это полноценная библиотека для создания UI компонентов, которая прекрасно работает без M и C из MVC архитектуры (т.е. вместо MVC архитектуры, React-разработчики обычно используют Flux архитектуру). В дополнение к React, для больших приложений имеет смысл использовать GraphQL в качестве data API бэкенда и Relay в качестве управления данными на клиенте (Redux в данном случае скорее всего не понадобится). Пример можно посмотреть здесь => https://github.com/kriasoft/react-starter-kit
Конечно можно. React + Redux и дело в шляпе.
Для роутинга - react-router.
Для сборки/минификации/использования es6 и т.д. - webpack+babel
Для тестов - ммм, пожалуй, "мир реакта" просто сказка в вопросах тестирования. Есть много отличных инструментов.
---
В дополнение к предыдущему ответу: выбирать новую технологию для проекта стоит, только если сроки позволяют ( о чем там в принципе и написано). Использовать react для какой-то отдельной страницы/части можно.
Как сказал, Dan, создатель Redux (примерно, по памяти):"Если у вас нет времени изучать А, то А не требуется на этом проекте"