Well For example : if a player has any hero abilities that search deck for a certain card or an ability that draws cards , then I think it would be useful to go for a battle challenge with that hero especially if your opponent will not accept it. Therefore you get to activate the ability without the risk of losing your hero
Yes. You usually have much more to gain than lose when you attack, unless they have some sort of disruptive defense, (Great Image, Abomination, Deck discard, etc) then I would not hesitate to battle challenge, especially for drawing.
There's not much strategic advantage to accepting a battle challenge. There are certain Heroes you definitely don't want to activate over and over, like Gabriel (Wa).
Basically any hero that causes you to lose cards is a hero that I would block in a battle challenge (Simeon {blue}, Gabriel, Warrior's spear hero, etc). Also, if I have King o' Tyrus I will usually block any battle challenge.