ABSTRACT
The benefits of virtualized IT environments, such as compute clouds, have drawn interested enterprises to migrate their applications onto new platforms to gain the advantages of reduced hardware and energy costs, increased flexibility and deployment speed, and reduced management complexity. However, the process of migrating a complex application takes a considerable amount of effort, particularly when performing post-migration testing to verify that the application still functions correctly in the target environment. The traditional approach of test case generation and execution can take weeks and synthetic test cases may not adequately reflect actual application usage.
In this paper, we propose and evaluate a black-box approach for post-migration testing of Web applications without manually creating test cases. A Web proxy is put in front of the production application to intercept all requests from real users, and these requests are simultaneously sent to the production and migrated applications. Results generated by both applications are then compared, and mismatches due to migration problems can be easily detected and presented to testing teams for resolution. We implement this approach in Splitter, a software module that is deployed as a reverse Web proxy. Through our evaluation using a number of real applications, we show that it Splitter can effectively automate post-migration testing while also reduce the number of mismatches that must be manually inspected. Equally important, it imposes a relatively small performance overhead on the production environment.
- AlertSite. Dejaclick by AlertSite. http://www.dejaclick.com.Google Scholar
- Michael Benedikt, Juliana Freire, and Patrice Godefroid. VeriWeb: Automatically testing dynamic Web sites. In WWW '02, 2002.Google Scholar
- BMC Software Inc. BMC discovery. http://www.bmc.com/products/offering/bmc-discovery.html.Google Scholar
- Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In OSDI '99, pages 173--186, 1999. Google ScholarDigital Library
- Sudarshan S. Chawathe, Anand Rajaraman, Hector Garcia-Molina, and Jennifer Widom. Change detection in hierarchically structured information. SIGMOD Rec., 25 (2): 493--504, 1996. Google ScholarDigital Library
- Gregory Cobena, Serge Abiteboul, and Amelie Marian. Detecting changes in XML documents. In ICDE '02, 2002.Google ScholarCross Ref
- Sebastian Elbaum, Srikanth Karre, and Gregg Rothermel. Improving web application testing with user session data. In ICSE '03, pages 49--59, 2003. Google ScholarDigital Library
- Indrani Ghatare. Using WebSphere DataStage with ibm DataMirror change data capture. http://www.ibm.com /developerworks/edu/dm-dw-dm-0805ghatare-i.html.Google Scholar
- Hayes 2008 Brian Hayes. Cloud computing. Commun. ACM, 51 (7): 9--11, 2008. Google ScholarDigital Library
- IBM. Tivoli application dependency discovery manager. http://www-01.ibm.com/software/tivoli/products/taddm/.Google Scholar
- IBM. Tivoli provisioning manager. http://www.ibm.com/software/tivoli/products/prov-mgr/.Google Scholar
- Imad Khoury, Rami M. El-Mawas, Oussama El-Rawas, Elias F. Mounayar, and Hassan Artail. An efficient Web page change detection system based on an optimized hungarian algorithm. IEEE TKDE, 19 (5): 599--613, 2007. Google ScholarDigital Library
- Erwin Leonardi and Sourav S. Bhowmick. Detecting changes on unordered \mboxXML documents using relational databases: a schema-conscious approach. In CIKM '05, 2005. Google ScholarDigital Library
- Giuseppe A. Di Lucca, Anna Rita Fasolino, Francesco Faralli, and Ugo de Carlini. Testing Web applications. In ICSM '02, pages 310--319, 2002. Google ScholarDigital Library
- Morris Marden. An architectural evaluation of java TPC-W. In HPCA '01, page 229, 2001. Google ScholarDigital Library
- Kiran Nagaraja, Fábio Oliveira, Ricardo Bianchini, Richard P. Martin, and Thu D. Nguyen. Understanding and dealing with operator mistakes in internet services. In OSDI'04, 2004. Google ScholarDigital Library
- Novell Inc. PlateSpin migrate. http://www.novell.com/products/migrate/.Google Scholar
- D. Ohst, M. Welle, and U. Kelter. Difference tools for analysis and design documents. In ICSM '03, 2003. Google ScholarDigital Library
- Fábio Oliveira, Kiran Nagaraja, Rekha Bachwani, Ricardo Bianchini, Richard P. Martin, and Thu D. Nguyen. Understanding and validating database system administration. In USENIX'06, 2006. Google ScholarDigital Library
- Filippo Ricca and Paolo Tonella. Analysis and testing of Web applications. In ICSE '01, pages 25--34, 2001. Google ScholarDigital Library
- Sreedevi Sampath, Valentin Mihaylov, Amie Souter, and Lori Pollock. Composing a framework to automate testing of operational Web-based software. In ICSM '04, Washington, DC, USA, 2004. Google ScholarDigital Library
- Squid Developers. Squid proxy cache. http://www.squid-cache.org/.Google Scholar
- Y. Wang, D.J. DeWitt, and J.-Y. Cai. X-Diff: an effective change detection algorithm for XML documents. In ICDE '03, pages 519--530, 2003.Google ScholarCross Ref
- A. Williams, M. Arlitt, C. Williamson, and K. Barker. Web workload characterization: Ten years later. In Web Content Delivery, pages 3--21. Springer, 2005.Google ScholarCross Ref
- Lauren Wood, Vidur Apparao, Steve Byrne, Mike Champion, and Scott Isaacs. Document object model (DOM) level 1 specification (second edition), 2000. http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/.Google Scholar
- Ian T. Young. Proof without prejudice: use of the kolmogorov-smirnov test for the analysis of histograms from flow systems and other sources. The Journal of Histochemistry and Cytochemistry, 25 (7): 935--941, 1977.Google ScholarCross Ref
- Wei Zheng, Ricardo Bianchini, G. John Janakiraman, J. Renato Santos, and Yoshio Turner. JustRunIt: Experiment-based management of virtualized data centers. In USENIX'09, June 2009. Google ScholarDigital Library
Index Terms
- Splitter: a proxy-based approach for post-migration testing of web applications
Recommendations
A Service Sustainable Live Migration Strategy for Multiple Virtual Machines in Cloud Data Centers
AbstractVirtual machine (VM) migration is an indispensable aspect of a virtualized cloud environment. It assists in resource management by dynamically relocating VMs from one physical machine to another. This is an essential aspect especially ...
Power efficient virtual machine migration in a scientific federated cloud
Virtualization technology enables cloud computing to provide virtual infrastructure. This virtual infrastructure is managed by centralized entity which is responsible for creation, deletion and migration of the virtual machine. Migration module helps to ...
Performance-to-Power Ratio Aware Virtual Machine (VM) Allocation in Energy-Efficient Clouds
CLUSTER '15: Proceedings of the 2015 IEEE International Conference on Cluster ComputingThe last decade witnesses a dramatic advance of cloud computing research and techniques. One of the key faced challenges in this field is how to reduce the massive amount of energy consumption in cloud computing data centers. To address this issue, many ...
Comments