As Tenerife is part of Spain and the EU, for any stay over 90 days, you will need a visa. However, if you intend to stay for longer, you may need a residence card.