If you are pressing the TAB key to target and tying the /assist to the same keypress, it won't work.

Consider:
  1. TAB key pressed on client 1.
  2. Game client sends keypress event to WoW server.
  3. <Insert internet/server latency delay here>
  4. WoW server sends acknowledgement and target update event to client 1 and other nearby clients.
  5. <Insert internet/server latency delay here>
  6. Client 2 sees target change on client 1.
  7. Client 2 can now /assist client 1.
  8. Client 2 presses /assist <client 1> key/macro.
  9. <Insert internet/server latency delay here>
  10. WoW server sends acknowledgement and target update event to client 2.
  11. Spells can now be cast against client 2's new target.


Let's assume your latency (when you hover your mouse cursor over the menu button) shows 120ms. That means client 2 will not be able to fire a spell at the assisted target for at least 360ms, and that's assuming you are spamming the key like a baboon that got into a pro football team's stash of snickers bars and red bull.

What (I would presume) most of us do is have our combat macro key fire an /assist <main> as part of the mapped key so you just start spamming the keys and the followers just start firing once the target update happens (step 11 above).