Ideally, the 3 to 7 seconds for a magic spell is plenty and might even be too much. An animation for a physical attack really should only last something like 3 seconds. Enough time to run forward, swing the weapon, play the hit animation, run back into place. Any longer than that for something you're going to be doing often is going to get tedious.
Magic animations, on the other hand, should really be no longer than 15 seconds. Even then, 15 seconds can easily become tedious and annoying. There are really great magic spells in games (even the powerful spells) that look impressive despite their 6 second animations. Anything you expect the player to be using often will get tedious when you've got overly long animations.
I, for one, do not need to watch "Knights of the Round" every single last freakin' time I execute it. I also don't need to see the complete destruction of the solar system each time Sephiroth throws a hissy fit in combat. Let's not even get into the really unnecessary and overly long animations of Final Fantasy 8 summons, or Final Fantasy 10 summons. Such animations are impressive ONCE. When you've been using them for hours on end, they become tedious.
Let's think about games that exist on the SNES. Their animations typically last no more than 6 seconds. Even spells like Luminaire and Ultima don't last any longer than 9 seconds.