Recently the only normal prices left for GPU's are the GTX 1050TI which are 4 GB's cards.
My question is if I buy them today, will they be able to mine something in 3 years or will the cards be too weak to mine at that point?
I've got to be honest with you, I disagree with the premise. You can get some good cards for normal prices. I've seen 1080TIs going around here for 700-800 and those cards at that price will ROI in something like 5-months. I'm not too sure what kind of profit 1050ti's are getting now, but they've got to at least take that long to ROI if I'm not mistaken.
Three years down the road is anybody's guess. You might be the only person mining at that point or there might be an even more serious drought of VRAM, only time can tell. I'd assume that they will remain profitable long enough to ROI and then some without using the card too harsh. This will allow you to retire the card to a gaming rig, continue mining or sell the card used at a discount; either way I see it working out for you depending on the prices of electricity and how hard you run the card. You could very easily burn it out before a year if you're not careful.