Cloud Based Server Performance Testing Tool

DOI : 10.17577/IJERTV2IS90900

Download Full-Text PDF Cite this Publication

Text Only Version

Cloud Based Server Performance Testing Tool

Bisret Narula Vinod Beniwal

Guru Jambeshwar University Assistant Professor,

of Science and Technology, JCD College of Engineering, Hissar (Haryana) Sirsa (Haryana)

Abstract

Cloud computing is the most imperative swing in the information technology scenery yet and in addition to it Virtualization is one of the edifice wedge for cloud computing and endows with the method to realize the vibrant allotment of resources. The vibrant reconfiguration of cloud resources events lead to performance thump during the reconfiguration phase. Cloud computing convey countless big business profits ranging from greater than before expenditure efficiencies, enlarged business suppleness, healthier utilization of possessions, not as much of operational problem, a lesser amount of funds outflow. As it is clear that Clouds permit venture to boost up or drop off their resource allotment on requirement in riposte to varying workload strength. So a Successful cloud testing is required which can enhance and accelerate the performance of the cloud itself. In this paper, we modeled a cloud-based testing tool which tests the load on the cloud server in response to workload variations and provides the performance analysis graph according to the load variations so that maximum and efficient utilization of cloud server can take place without any breakdowns.

  1. Introduction

    Software testing is part of any profitable software enterprise [1].These days testing plays an significant task in software maturity process. Despite the fact that software testing is exclusive and time-consuming, satisfactory testing is tough, specifically for dispersed system using web services procedure in the factual situation. The growth of cloud computing presents us innovative ideas to resolve these testing problems. Performance testing is one of the imperative activities straddling the entire life cycle of software engineering [2].

    Cloud computing has come out as a novel technology that endow with huge amounts of computing and data storage capability to its clients with a assurance of

    greater than before scalability, elevated availability, condensed administration and perpetuation costs [3].Until now cloud computing has been productively used in enterprise applications, and countless automatic performance testing products have been developed, such as, HP's Load Runner [4],Grinder [5], Apache Jakarta's JMeter [6], and IBM's Rational Robot [7]

    .Variety of system have been developed for automated performance test execution in cloud environment. The cloud-based performance testing system for testing the performance of the cloud server under the heavy-duty loads, which is a portable, extensible, and easy-to-use framework for generating and submitting test workloads to computing clouds. It put forward a range of testing services to clients and admin both, such as multi-user concurrency testing, multiserver performance testing, automatically engendering and accomplishing test cases, gathering test outcomes moreover reporting to testers.

    This paper is written to firstly present different types of cloud testing and its issues and available cloud testing tools, This paper mainly explores the design and implementation of cloud server testing tool, which further depicts the working of the system .This paper also focus on techniques used and benefits of tool implementation .

    So by using this testing tool firstly, performance analysis of the servers can be done dynamically according to the load variations in cloud environment with the help of which we will be able to know the current status of the cloud server and if further any reconfiguration of the cloud server is required then this can be done. Secondly, multi-user concurrency testing can be improved because numerous clients can test simultaneously in this system, each virtual machine on node server runs one test, so tests between individual users do not affect each other, thereby improving system testing efficiency. Thirdly, cloud computing technology, provides unlimited computing power and extends testing scope easily, to meet the requirements

    of different pressure. Fourthly, it can test the load bearing capacity of the server which will lead to optimal utilization of the server capacity. Fifthly, By using the cloud computing platform provided by cloud computing provider, significant cost and time of building the hardware infrastructure can be saved and also cost of hiring the testing experts is saved

  2. Cloud Testing Types and Tools

    Cloud testing on the whole line up with the notion of cloud and software as a service (SaaS). One most attention-grabbing feature of cloud testing is Testing as a service (TaaS) Any application that is build up or is presently in the progression of migrating to a cloud ought to be commenced by cloud testing for the reason that cloud testing is a fortunate thing and an to be expected commotion within the software

    1. Types of Cloud Testing and its Issues

      Cloud testing is a undeniable innovative way for companies to congregate promising business needs for quickness, elasticity, price diminution and time-to- value. But it also insinuate new technology peril which, if not thoroughly understood, can trim down or even eradicate the impending business profits. A range of testing that can be executed on the cloud model is described in paper [8] are shown in Table 1.Cloud Testing Types as under.

      Table1. Cloud Testing Types

      Performance and Load Testing

      To ensure summiting the big business necessities precise to cloud computing

      Interoperability and Compatibility testing

      To ensure meeting the business necessities explicit to cloud computing

      Stress and Recovery testing

      To ensure statistics recovery from crashes, hardware failures in a cloud environment.

      System Integration and User Acceptance Testing

      To ensure the developed cloud solution meets the functional prerequisite.

      Security Testing

      To ensure meeting the Application/ Data security constraints.

      Cloud testing issues have been concentrated on earlier [9]. The paper address tool prop up for cloud testing, purposely shore up for multi-layer testing, service level

      agreement based testing, simulation based testing, embedding testing with implementation, and on- demand testing.

    2. Cloud Testing Tools

      Using a relevant testing environment is constantly a striking testing concern, however it is decisive on the subject matter of cloud based testing. Various tools are available [10], [11], [12], [13],[14], [15] to test cloud- based systems at various layers together with storage space system, hardware interface, platform interface and application classification. As maximum and supplementary software and databases are approaching the cloud as a result there is a requirement for the dynamic software testing tool to test the cloud based software. The tool is required to test the cloud based application as well as provide the solution to different companies to use this cloud based software testing tool for testing their applications. [16] describes thirteen cloud testing tools namely D-cloud, YCBS, SOASTA, ITKO, ETHZ etc. which are emerging in the recent years and comparisons among these testing tools.

  3. Design and Implementation of Cloud Server Testing Tool

    Solitary eye-catching cloud comuting environment is a three tier composition [17], which comprise of infrastructure purveyors, service suppliers, and clients. The three party are also called huddle nodes, huddle supervisor, and client in cluster computing systems [18], and resource suppliers, service suppliers, and clients in grid computing systems [19]. An infrastructure purveyor upholds fundamental hardware and software conveniences. A service supplier rents possessions from the infrastructure purveyors, constructs suitable multiserver systems, and endow with an assortment of services to users. A end user put forward a service demand to a service supplier, obtain the preferred end result from the service supplier by means of confident service-level agreement, and pays for the service based on the quantity of the service and the eminence of the service. A service supplier can build diverse multiserver systems for dissimilar application domain, such that service requirements of diverse nature are propelled to diverse multiserver systems. Each multiserver system consists of numerous servers, and such a multiserver system can be dedicated to serve up individual sort of service requirements and applications.

    An application domain is exemplified by two most fundamental features, i.e., the workload of an application environment and the anticipated quantity of

    a service. The configuration of a multiserver system is described by two fundamental attributes, firstly by the size of the multiserver system, which specifies the number of servers and secondly by the swiftness of the multiserver system, which specifies the execution speed of the servers.

    As the workload on the servers in the multiserver system increases rapidly then the throughput will be decreased and due to this task waiting time will be increased and the task response time will be decreased speedily which will further leads to poor quality of service (QoS). Thus to avoid this problem a dynamic testing tool is required which will perform load testing and performance testing of the cloud server at any instant of time

    1. Working of the System

      Here we have assumed that there are ten clients which are using the resources of the cloud server on pay-per- utilized bases according to their requirements and we have also assumed that maximum capacity of the cloud server is 100gb. So according to this their exist various cases by which we can test the load and performance of the cloud server such as:-

      Case 1: (zero utilization of cloud server by the clients) This case can be represented by the Figure 1. Client Space Allocation and Figure 2. Resource Details shown below. Here all the ten clients have not used any resources of the server as shown in Figure 1. Client Space Allocation thus by clicking on the get details button we retrieve the output that zero resources of the server are used as shown in Figure 2. Resource Details which indicates that server is idle and its performance analysis is shown in Figure3. Performance Analysis Graph.

      Figure1. Client Space Allocation

      Figure2. Resource details

      Figure3. Performance analysis Graph

      Case2: ( minimum utilization of resources by the clients)

      This case can be represented by the Figure 4. Client Space Allocation and Figure 5. Resource Details shown below. Here we can see that client first and client ten has acquired 5gb resources each of the server as shown in fig 4 thus by clicking on the get details button we retrieved the output i.e. 10% resources of the server are used as shown in fig5 which indicates that there is minimum amount of load over the server and its performance analysis is shown in Figure6. Performance Analysis Graph as under

      Figure4. Client Space Allocation

      Figure5. Resource details

      Figure6. Performance analysis Graph

      Case3: ( average utilization of resources by the clients) This case can be represented by theFigure 7. Client Space Allocation and Figure 8. Resource Details shown below. Here we can see that client fifth and client ten has acquired 10gb resources each of the server and rest of the clients have acquired 5gb space as shown in fig 7 thus by clicking on the get details button we retrieved the output i.e. 60% resources of the server are used as shown in fig8 which indicates that there is average amount of load over the server and its performance analysis is shown in Figure9. Performance Analysis Graph as under

      Figure7. Client Space Allocation

      Figure8. Resource details

      Figure9. Performance analysis Graph

      Case4: (max. utilization of resources by the clients) This case can be represented by the Figure 10. Client Space Allocation and Figure 11. Resource Details shown below. Here we can see that clients have used or acquired 10gb resources each of the server as shown in Figure 10. Client Space Allocation thus by clicking on the get details button we retrieved the output i.e. 100% resources of the server are used as shown inFigure 11. Resource Details which indicates that there is maximum amount of load over the server and its performance analysis is shown in Figure12. Performance Analysis Graph as under.

      Figure10. Client Space Allocation

      Figure11. Resource details

      Figure12. Performance analysis Graph

  4. Techniques and Typical Tool Implementation Benefits

    This section classifies some techniques used in cloud testing tool and their benefits.

    Simulation. To condense the complication and take apart quality apprehension, simulation of testing environment is done for testing cloud system so that this cloud server testing tool can focus on performance and quality problems at any instance dynamically, and analyze system behavior under various scenarios.

    Service scathing. The systems hosted on the cloud may use services from various providers. So this cloud server testing tool use various driver techniques that are need to be personalized to mock exterior functionalities at the service interface level.

    Parallel job execution testing. Parallel processing of the tasks had turn out to be a natural practice for applications that are build upon cloud. By implementing This Testing tool various benefits are achieved and by parallelizing them testing time and cost are minimized.

    Virtualization of Environment. Throughout software lifecycle, testing and regression testing typically need to preserve an assortment of testing environment for dissimilar editions, reliant software and platforms. It is always resource consuming to maintain the environment, and effort consuming to set up the environment for each test execution. But this testing tool do not require any infrastructure setups nor any testing expert is required this testing tool will be able to help to ease and pace up the progression, and to trim down test cost.

  5. Conclusion and Future Scope

    . Cloud computing changes the way of software deployment, There exist new opportunities to enhance testing system capabilities by using cloud infrastructure services, TaaS and environment.

    The paper signifies typical tools are emerging in the recent years for cloud testing that are use to test the performance of web applications. To test the workload upon the cloud server under the heavy-duty loads in the multiserver cloud system under different scenarios a new tools which we have designed is modelled here which shows the status of the cloud server and its performance at every instance dynamically. So from the above this can be concluded that by means of this testing tool performance analysis of the servers can be made vigorously according to the load variations in cloud environment with the help of which we will be able to know the current status of the cloud server and if further any reconfiguration of the cloud server is required then this can be done, multi-user concurrency testing can be improved because numerous clients can test simultaneously in this system, Testing the load bearing capacity of the server which will lead to optimal utilzation of the server capacity which will further enhance the QoS . To test the cloud- servers and systems resources, techniques and tools are necessary to concentrate exclusively on quality disquiet of the cloud infrastructure for instance considerable scalability and pulsating arrangement. But there are still reasonably a few quality problems that not acknowledged and finely understood. Precise testing techniques are deficiently needed to address the unique problems of cloud architecture

  6. Acknowledgment

    It would not have been possible to write this paper without the guidance and support of guide (Mr. Vinod Beniwal) for his commendable supervision, monitoring and unvarying support all the way through the course of this thesis. The blessing, help and directions given by him time to time had encouraged a lot in implementation of this task through a variety of stages.

  7. Reference

  1. B. Meyer, Seven principles of software testing. Computer, vol. 41, no.8, pp. 99-101, Aug. 2008, doi:10.1109/MC.2008.306

  2. Shiping Chen, David Moreland, Surya Nepal and John Zic, Yet Another Performance Testing Framework, Software Engineering.Perth, WA , pp. 170179, March 2008.

  3. N. Yigitbasi, A.Iosup, D.Epema and S.Ostermann, C- Meter: A Framework for Performance Analysis of Computing Clouds, in Cluster Computing and the Grid. Shanghai, pp. 472477, June 2009. [4]Mercury/HP'sLoadRunner,http://www.mercury.com/us

/products/ performancecenter/loadrunner/index.html

  1. IBM Rational Robot,http://www306.ibm.com /software/ awdtools/tester/robot/.

  2. Apache Jakarta Project:JMeter,http://jakarta. Apache .org

    /jmeter/.

  3. Grinder, http://grinder.sourceforge.net/.

  4. Bisret Narula, Vinod BeniwalCloud Testing- Types,service Platforms and Advantages An International journal of Computer Applications,vol 72, No.20,June2013

  5. J. Gao, X. Bai, and W. T. Tsai, CloudTesting:Issues, Challenges, Needs and Practice, Software Engineering: An International Journal, vol. 1,No.1, pp. 923, 2011.

  6. G. Candea, S. Bucur, and C. Zamfir, Automated Software Testingas a Service, in Proceedings of the 1st ACM symposium on Cloudcomputing, 2010, pp. 155160.

  7. L. Ciortea, C. Zamfir, S. Bucur, V. Chipounov, and G. Candea, Cloud9:A SoftwareTestingService, ACMSIGOPS Operating Systems Review,vol. 43, no. 4, pp. 510, 2010.

  8. T. King and A. Ganti, Migrating Autonomic Self- Testing to the Cloud,in Third International Conference on Software Testing, Verification, andValidation Workshops,2010, pp. 438443.

  9. J. Moreno, D. Kossmann, T. Kraska, and S. Loesing, A TestingFramework for Cloud Storage Systems, Masters thesis, Swiss Federal Institute of Technology Zurich, 2010.

  10. M. Oriol and F. Ullah, YETI on the cloud, in Third InternationalConference on Software Testing, Verification, and Validation Workshops,2010, pp. 434437.

  11. L. Yu, W. Tsai, X. Chen, L. Liu, Y. Zhao, L. Tang, andW. Zhao, Testing as a Service over Cloud, in 2010 Fifth IEEE International Symposium.

    on Service Oriented System Engineering, 2010, pp. 181188.

  12. Xiaoying Bai, Muyang Li, Bin Chen, Wek Tek Tsai, Jerry Gao,Cloud Testing Tools in 2011 sixth IEEE International Symposium.

  13. Y.C. Lee, C. Wang, A.Y. Zomaya, and B.B. Zhou, Profit-DrivenService Request Scheduling in Clouds, Proc. 10th IEEE/ACM IntlConf. Cluster, Cloud and Grid Computing, pp. 15-24, 2010.

  14. C.S. Yeo and R. Buyya, A Taxonomy of Market-Based Resource Management Systems for Utility-Driven Cluster Computing,Software – Practice and Experience, vol. 36, pp. 1381-1419, 2006.

  15. F.I. Popovici and J. Wilkes, Profitable Services in an UncertainWorld, Proc. ACM/IEEE Conf. Supercomputing, 2005

Leave a Reply