Vertical asymptotes tend to be found whenever an x-intercept cannot be found for individual #x# values. Sometimes you just have to understand the domain of a particular function to realize where these asymptotes would be, or you can solve for them.

If you have:

#x^2/((x-2)(x+3))#

then I would expect asymptotes at #x = 2# and #x = -3#, like so:

graph{x^2/((x-2)(x+3)) [-10, 10, -5, 5]}

This one has no limit at those values because the limit from each side is different than the one from the other side (e.g. #-oo# vs. #oo#).

As an example of solving for one, set #y = 0# and solve for #x#, and you should be able to find the x-intercepts that exist.

#0 = x^2/((x-2)(x+3))#

Since you get #0 = x^2# overall, an x-intercept exists at #x = 0#, but since you had to multiply #0*(x-2)(x+3)#, neither the #x = 2# nor the #x = -3# intercepts exist.

If you have:

#tanx#

then I would expect asymptotes at #pi/2 pm pik# where #k# is an integer, like so:

graph{tanx [-10, 10, -5, 5]}

Same thing with regards to limits from either side of each vertical asymptote.

#0 = tanx = (sinx)/(cosx)#

Since #0 = sinx#, an intercept exists at #x = pmpik# where #k# is an integer, but since you had to perform #0*cosx#, asymptotes exist wherever #cosx = 0#, namely, #x = pi/2 pm pik# where #k# is an integer. Hence, #tanx# has those asymptotes.