Потому что test.php в вашем случае это формально говоря результат обработки того, что вы отправили этой странице методом POST. По факту, открывая test.php просто в браузере - вы делаете запрос серверу методом GET, который в свою очередь ничего не отправляет этой странице (никаких данных для обработки).
Если бы ваш запрос при открытии страницы test.php в браузере был вида /test.php?request=HelloWorld
а в коде test.php был бы код print_r($_GET['request']), то вы бы получили на экран значение параметра request, который был передан браузером на сервер и увидели бы HelloWorld.