Тест на angularjs?
Конечно это можно сделать на Ангуляре, да вообще можно на чем угодно. Главное правило всю информацию о состоянии теста и пройденных этапах хранить и проверять только на сервере. Даже соответствие времени ответов можно на сервере проверять, так как на клиенте можно хакнуть объект Date)
Сделай простую авторизацию. Отправляй на сервер всю информацию (тест начался -> ответил|не успел ответить) и в зависимости от этого уже давай доступ к следующим задачам, разруливаться всё должно на сервере.
Реализовать можно хоть на чём.