I was wondering if it is possible that you add a flag to Campaign.Send method for test campaigns so when this flag is set to true the campaign will remain in the drafts, wont show up in the reports and can still be sent without getting the message 'This campaign has already been sent'. I think this would make sense since this method already has a return value of 'No Test Campaigns Available' but is actually not really usable for testing. If you use it as it is now each test shows up in the reports and each time you have to create a new draft to be able to send it again. :/
Thanks or your comment, I think you added a support request regarding this and we've sent a response via that means.