I know this has come up some in recent weeks on this list and even in discussion locally. We are trying to extend CloudStack's existing Python Testing Framework (http://wiki.cloudstack.org/display/QA/Python+testing+framework) to test the new EC2 and S3 api's recently added (http://wiki.cloudstack.org/display/RelOps/EC2+API+support+in+CloudStack and http://wiki.cloudstack.org/display/RelOps/S3+API+in+CloudStack).
As an initial cut, we are exploring using boto (http://docs.pythonboto.org/en/latest/index.html) and it's corresponding test suite as a foundation (https://github.com/boto/boto/tree/develop/tests) for our own test scripts. Boto does not support SOAP api and we need to test both REST and SOAP api's in CloudStack. My current thinking is to use the AWS tools provided by Amazon (http://aws.amazon.com/developertools/Amazon-EC2/351) and call them directly from our test scripts, which will satisfy our SOAP requirement, but then we have two test scripts, one that uses boto and one that uses SOAP, which will get messy/complex. The goal here is to test these the new api's in a fashion that can be run without too much interaction by the tester and finally the entire framework needs to be flexible enough to work in a committers environment without too much 'setting up' and configuration. I'm reaching out to the community before moving to much further on this in the hopes that someone might have other ideas and/or even assist us building this out. Sam