You are correct SM, that it can be a hard choice. The consideration I use is in that scenario is that if I have say 2 archers and 1 warrior and they have three warriors next to the town, is this:
if i can attack with a 2A Vs a 1D, I probably win. Now I have killed 2 out of 3. The third one will probably die if it attacks as my archers will not be put up on defense, unless they took no damage and got promoted.
Now I get to ding them with an archer and my warrior probably wins. Else they fort the warrior and wait for the next wave or they pillage.
If I do not attack I have a fair chance that I will take losses. How much worse off am I if I let them hit my 1D archers and maybe kill them?
Basically I want to attack with archers and not defend, unless I know no other atackers will be coming for some time. IOW if I have more defenders than attackers and cannot lose the town unless I attack and have bad luck.
By killing 2 up front, I may even get the Zulu to call off the dogs. They may decide they would rather not risk more at this time.