Galmarino's Test gives a condition equivalent to being a stopping time. It says:
Let $X$ be a continuous stochastic process with index set $\mathbb{R}_+$ (i.e. each sample path is a continuous function of time). Let $\mathscr{F}$ be the filtration generated by $X$. Then a random time $T$ is a stopping time iff
for every pair of outcomes $\omega$ and $\omega'$, $T(\omega) = t$, $X_s(\omega) = X_s(\omega')$ for $s \leq t \implies T(\omega') = t$
The condition essentially says that the map $T$ restricted to $\{T \leq t\}$ factors through $(X_s)_{s \leq t}$, and I can prove that it is necessary by using a monotone class argument. I don't know how to prove the converse though.
Got a hint from http://wt.iam.uni-bonn.de/fileadmin/WT/Inhalt/people/Karl-Theodor_Sturm/Lectures/vorlesungWS0809/sheet1.pdf
Consider the problem in the canonical space. Define
$\alpha_t(\omega(\cdot)) = \omega(\cdot \wedge t)$
Using the monotone class theorem, we can show that the mapping:
$\alpha_t: (\Omega,{\mathcal F}_t^X) \to (\Omega,\mathcal{F})$
is measurable. And using the condition, we can show that
$ (T\le t) = \alpha_t^{-1}(T\le t)$
Therefore, $(T\le t)\in \mathcal{F}_t^X$.