Обычно test и prod не должны отличаться хардварно/софтварно, за исключением мощности.
В богатой фирме железо/софт вообще идентичны. Если не требуется идеальное совпадение, в тесте можно иметь меньше винтов, ибо боевая база не нужна.
Задача - на тесте полностью скопировать окружение prod, и в случае проблем, суметь воспроизвести это на нем.
Dev должен более-менее совпадать, в основном версии софта, но это зависит от того, что там происходит.
Опять же, сильно зависит от задачи. Если это боевой сервер, было бы например неплохо на test проверить как работают новые прошивки биоса/рейд контроллера, перед тем как повторять это на боевом.
Если же это только небольшой сайт, то вполне достаточно будет воспроизвести версию ОС и ПО. В общем смотря что крутится.