Обоснование: Глагол 'hope' (надеюсь) относится к будущему времени. Указание 'by midnight' (к полуночи) также говорит о действии, которое должно завершиться к определенному моменту в будущем. Поэтому используем Future Perfect.
Ответ: I hope I will have finished my test by midnight.