Test-Time Prompt Tuning for Zero-Shot Generalization in Vision-Language Models