One of the main features of cloud computing is elasticity, where resource is (de-)allocated on demand and at system's runtime. Since elasticity is not trivial, testing cloud-based systems (CBS) is laborious. Among others, testers must set up elasticity parameters on cloud computing infrastructure, specify a sequence of resource variations, and drive CBS through this sequence. In this paper, we propose a Domain-Specific Language (DSL) aiming at reducing the tester's effort in writing and executing CBS elasticity testing. Our DSL abstracts test case specification from different cloud provider's libraries, making it portable. Experiments with two different case studies, a MongoDB replica set and a distributed web application, shows that our approach reduces the effort (in number of words) to write test cases, compared to dedicated libraries. We also see a reduced effort when running the same test case on multiple cloud providers.
['Michel Albonico', 'Amine Benelallam', 'Jean-Marie Mottu', 'Gerson Sunyé']
A DSL-based approach for elasticity testing of cloud systems