The Weierstrass test is quite intuitive: it tells you that if you can bound each function in the series by a constant, and that this new series of constants converges, then so does your sum. (And what's more, it converges uniformly.)
First note that if $\sum_n M_n$ is to converge then the sequence $(M_n)$ must be bounded. And since each $M_n$ is a bound for $f_n$, this means that the sequence $(f_n)$ must be uniformly bounded on $I$, the domain of the functions in the sequence.
So there are two steps that you need to follow. First you need to find a subset $I \subseteq \mathbb{R}$ on which you can uniformly bound the $f_n$. Then you need to find whether the bounds you can attain satisfy the convergence condition of the Weierstrass test.
Now, for any compact $I \subseteq \mathbb{R}$, your $f_n$ will be bounded in $x \in I$ because they are continuous. So you need to look instead at $n$: for which subset $I \subseteq \mathbb{R}$ is the sequence $(f_n(x))$ bounded for each fixed $x \in I$?
Once you have worked this out, you can test to see if this subset gives way to the constants $M_n$ for which $|f_n(x)| \le M_n$ for each $x \in I$ and for which $\sum_n M_n$ converges.