Consider a free particle initially localized with equal probability between -a < x < a. So the initial wavefunction is psi(x,0) = const if -a<x<a and 0 otherwise. 

In momentum space this is ~ \int psi(x,0) e^{i k x} dx ~ sin(k a)/k . So the time evolved wavefunction is:

tempint=PowerExpand[Simplify[Integrate[Exp[I k a]/k Exp[I k x-I h (k^2)/(2m) t],{k,-Infinity,Infinity},GenerateConditions->False]]]

psixandt=Simplify[(tempint-(tempint/.a->-a))/(2I)]

(* Normalize it *)
psixandt=psixandt*1/π/Sqrt[2a]

(* Check the norm *)
NIntegrate[((Abs[psixandt])^2)/.m->1/.h->1/.t->1/.a->1,{x,-Infinity,Infinity},WorkingPrecision->20,MaxRecursion->15]

Psifunc[t_,x_]:=If[t==0,
If[x<=-a||x>=a,0,1/Sqrt[2a]],-((I (Erfi[((((1/2)+(I/2)) (Sqrt[m]) (a-x))/((Sqrt[h]) (Sqrt[t])))]+Erfi[((((1/2)+(I/2)) (Sqrt[m]) (a+x))/((Sqrt[h]) (Sqrt[t])))]))/(2 (Sqrt[2]) (Sqrt[a])))]

(* Be patient, this step takes a little time *)
psilist=Table[{t,x,((Abs[Psifunc[t,x]])^2)/.h->1/.m->5/.a->1/2},{t,0,7,0.02},{x,-10,10,0.1}];

animation=Animate[ListPlot[{#[[2]],#[[3]]}&/@psilist[[n]],Joined->True,PlotRange->{{-5,5},{0,2}},PlotLabel->Style["t="<>ToString[(n-1)*0.02],20],AxesStyle->18,PlotStyle->Thickness[0.005]],{n,1,Length[psilist],1},AnimationRate->20]