![]() |
|
Success of most web or database applications, specially the ones related to e-commerce highly depends on its performance and response time when multiple users access it simultaneously. An application with high response time and poor performance can lead to huge problems. Load Testing helps in identifying the performance problems before you deploy your application for end users. Load Testing helps you design and simulate usage traffic which can be used to test your application infrastructure for performance, reliability and scalability.
We will try to understand few important aspects with Load Testing. Following document will help you understand what Load Testing means, why its required and how you can successfully implement Load Testing for your Web applications, Database applications, Web services or Command Line applications using AppPerfect.
Load Testing is a process to design and simulate usage traffic which can be used to test your application infrastructure for performance, reliability and scalability. Load Testing of applications involves testing the performance and scalability of your application with varying user load. Load testing involves simulating real-life user load for the target application. It helps you determine how your application behaves when multiple users hits it simultaneously. Load testing with different load strategies and conditions helps you determine software design issues like incorrect concurrency/pooling mechanism, poor optimization, memory build-up, etc. Load Testing helps you identify server configuration issues with Web server, application server, database server, load balancer, etc. Load Testing helps you detect if your current infrastructure is sufficient to meet your user demand. Load Testing helps you determine the peak user load your application can sustain, number of concurrent users your application can support, and whether or not your application will scale as more users access it.
Most developers face the following questions when designing a server-based multi-user system:
Load Testing can help you identify a variety of problems before you go into production:
AppPerfect offers Load Testing solution in the form of AppPerfect Load Test. AppPerfect Load Test is a fully Automated Load test, Stress test and Performance Test solution that is easy to use and cost effective. AppPerfect Load Test is found to be most affordable, cost effective, efficient, reliable and accurate solution by its customers. AppPerfect Load Test is easy to use with no programming required. It provides a unique view of the target machine with integrated load testing, stress testing and performance testing parameters such as response time and hit count along with monitoring of system resources such as CPU, disk, network and memory.
AppPerfect Load Test Supports load testing for Web Applications (HTTP/HTTPS protocol), Database Applications (JDBC Protocol). Web Services (SOAP protocol) and any Command line Application (CLI)
We will now try to understand how you can successfully implement Load Testing for your application using AppPerfect Load Test.
One of the important aspect in successfully implementing Load Testing is designing the test cases. Before
recording your test scripts you should be ready with the Test Plan for same. You should have the list of modules
documented which you would like to test in your application. Once you have figured out the modules to test, pick each
module and list down the features to test for that module, Once you have identified the features, design test cases for
each of the feature to test. For each of the test case, define the data set with which you will like to parameterize your
test case. Also define the validations you will like to perform for your test case.
Once you are ready with the test plan, you can start creating Test Scripts for each of the identified modules.
You can create various load testing scenarios for your applications through the Load Strategies provided by AppPerfect
Load Test. There are six load strategies you can choose from. With a combination of Run Duration and Load Strategy, you
can create various scenarios for testing the load that your web / database application can bear. You can also use load
strategies to indicate the breaking point of your applications.
For details on various Load Strategies refer to Load
Strategies chapter.
Select Project -> Properties... menu option and refer to Load Generator Settings tab. Here you can configure
the Load Strategy which best suits your requirement.
You can monitor System resources of your remote Web / Database Server and see how your server performs while your
application is getting stressed. Server Monitoring will provide CPU usage, Network I/O, Disk I/O, Memory statistics
during the execution of the test. This is helpful in determining if system resources on your Server Machine are adequate
to support the desired load. AppPerfect uses agentless architecture to monitor remote server resources, meaning it does
not require any service or agent to run on remote machine. It uses existing system services to fetch the system monitoring
information from remote machine. AppPerfect can monitor Windows 2000/XP/Vista/Windows 7, Linux x86, Solaris Sparc, MAC OSX
and AIX based servers.
Select Project -> Properties... menu option and refer to Server Monitoring tab. Here you can configure the
Remote Server settings which you need to monitor.
AppPerfect's Load Testing solution allows you to distribute your test over multiple machines to simulate real-world
conditions while testing web or intranet sites, client-server and other multi-tier applications. Testers can easily
configure the list of machines on which Test Script should be executed. Load Testing results from all machines are
accumulated into a single report for easier analysis.
To configure execution of load test on multiple machines select Project -> Properties menu option. It will
launch the Project Properties wizard. Select the "Distributed Testing" step where you can configure to run Test script
simultaneously on multiple machines. Distributed testing is performed using Load Test service running on the remote
machines. Hence, you need to have AppPerfect Load Test installed on all the machines where you desire to execute the test.
Load Test uses HTTP protocol to connect to Load Test service on remote machine. To connect to this service, you need to
select Protocol (Default is http), provide Host name or IP address of the remote machine, port on which service is
listening (Default is 8854) and Context Path (Default is AppService). Normally, you will need to specify only the host
name or IP address of remote machine and other fields will take only the default values.
Refer to Distributed Load Testing chapter for detailed instructions.
Once the test is completely designed you can execute it to Load or stress test your application with different load strategies as per your requirement. AppPerfect generates extensive reports for each virtual user and task. To replay the test select the Project -> Run.. menu option. AppPerfect will start specified virtual users simultaneously based on the selected Load Strategy. and each virtual user will execute the recorded tasks in automated manner. At the end of test execution you can view the detailed results for each of the virtual user and export them to HTML, PDF etc. formats. In case of failure, you can pass on these exported reports to your development team for further analysis. For more details on Test Execution Results refer to Understanding Test Results chapter.
With AppPerfect's Load Testing solution you can run complex and lengthy tests unattended. Tests can be scheduled to run overnight and engineers can analyze the results of execution next morning. As a result you save time and improve efficiency and can concentrate on other important tasks while scheduled tests run in background. To schedule tests you require AppPerfect Test Manager product. Once you have Test Manager installed you need to first configure Load Test to enable connection to Test Manager server. To configure the Test Manager connection select Tools -> Options -> Server Connections -> Test Manager Settings and provide the host:port information for the machine where Test Manager is installed. Once you have connection configured you can save the Load Test Project to Test Manager using File -> Export to Test Manager menu option. Once test is saved to Test Manager you can schedule Test Execution using Tools -> Schedule Project menu option.
For details on creating and executing Test Schedules using Test Manager Web-UI refer to Schedules chapter.
Test Engineers can share the load test scripts and results with different members in the team. Load Test results can be shared with developers which they can use to analyze application's performance with varying load. AppPerfect supports integration with Subversion (SVN) version control system. For details on integration with Subversion server refer to Team Server Configuration chapter.
IDE Integration is a highly useful feature in AppPerfect products. Once product is integrated in IDE you can start
IDE and can execute Load Testing of your Web / Database / Web Services Projects from within IDE. You can integrate
AppPerfect applications with Eclipse, IBM Rational Application Developer (RAD),
NetBeans,
IntelliJ Idea, JBuilder, Oracle JDeveloper and BEA Workshop studio.
Select Tools -> IDE Integration menu option to integrate with any of the supported IDEs. For details on integration with IDE refer to IDE Integration chapter.
AppPerfect supports integration with build process smoothly. You just need to export Load Test project as ANT Script or Command Line script and then you can execute these exported scripts from your build process. This way you can ensure that each build is Load tested before final deployment. To Export project as Ant Script select Tools -> Export Project as ANT Script... menu option. For details on ANT script execution refer to ANT Script Execution chapter.
Load Testing helps you design and simulate usage traffic which can be used to test your application infrastructure for
performance, reliability and scalability. Once a test case is recorded it can be played back multiple times with different
data sets. Its possible to validate output with different data inputs using the same test case by parameterizing the user
input. Moreover tests once recorded can be reused and extended to cover more features and test cases as your application
evolves,
AppPerfect's Load Testing solution is platform independent. Load Tests recorded on one platform can be executed over
different operating systems and hardware configuration.
AppPerfect Load Test is found to be most affordable, cost effective, efficient, reliable and accurate Load Testing
solution by its customers. In case you have not yet tried AppPerfect Load Test,
Download Now and give it a try today.
© 2003-2010 AppPerfect Corporation
AppPerfect is a trademark of AppPerfect Corporation.
Terms of Use |
Privacy Statement |
Site Map