Загуглил бы уже давно) И тест бы сам написал. Простая логика же. Берем коэфф. сложности 1. Заносим его куда нибудь (например в сессию). Даем вопрос. Отвечает на вопрос - сверяем, ЕСЛИ верно ответил - добавляем к коэффу 1, если неправильно - оставляем на месте. Далее смотрим коэфф, если он 2 - выбираем вопрос с такой сложностью. Соответственно каждому вопросу надо будет проставить эти "уровни" сложности, по которым будет отбор.
Обсуждают сегодня