Load Testing Using Neoload

32
Load Testing Using NeoLoad

description

Load_Testing_Using_Neoload

Transcript of Load Testing Using Neoload

  • Load Testing Using NeoLoad

  • Why Load Test An ApplicationDoes the application respond quickly enough for the intended users?Will the application handle the expected user load and beyond?Is the application consistently behaving when more users access the same?Will the application handle the number of transactions required by the business?Is the application stable under expected and unexpected user loads?

  • Functional vs. Load Web TestingFunctional testLoad testDo business processes function properly after implementation? (tested mostly in black box mode)FunctionalityWill 2,000 concurrent hits crash the server?StabilityIs response time acceptable according to specifications?PerformanceDo business processes function properly under heavy load?Functionality under load

  • Types of Performance TestingFind out whether the system can handle the expected load upon deployment under real-world conditions. This happens even during business as usual period.Overload the system beyond its expected number of users or transactions. Usually this happens for shorter duration, but causes more congestion.Find the stability of the system with respect to handling large amounts of data over extended time periods.Find the behavior and performance of each tier/unit.

  • Manual Testing Is ProblematicDo you have the testing resources? Testing personnel Client machinesHow do you synchronize users?How do you collect and analyze results?How do you achieve test repeatability?All of you, click the GO button again

  • The Tool SolutionMeaningful results with analysis toolsRepeats tests with scripted actionsRuns many Vusers on few machinesReplaces testers with Virtual UsersController manages the Vusers

  • 4 Main Components of Load Testing ToolsScripting Component Used to Create a Script which mimics a single user activity on the application. The Script is called Vuser Script.Load test Execution ComponentExecute the script as several users.AnalysisAnalyzing various performance counters.Monitoring (Web Server, Database Server, Networks).

  • NeoLoadA load testing tool by Neotys.Tool that measures performance and behaviour of the system under load.Used for testing web applications, Web services, flex applications Oracle forms and Silverlight applications.Uses Java Script for script enhancements.

  • Basic Neolaod Load Testing TerminologiesVuser Script : The script which mimics a single user activity on the application. This is done by capturing the Http traffic between browser and server.Container : A group of Http requests that represents a single user action.Population : This defines the number of users.Scenario: This shows the number of users, run pattern and various other run time settings to mimic the real world load test.

  • Neoload testing processCreate a script that mimics a single user activity on the applications.Enhance the script by using pass by values, variables and assertions.Validate the vuser script.Set the population and define a scenario.Create monitors to monitor the server parameters.Run the load testAnalyze the results.

  • Softsmith Neoload Testing ServicesSoftsmith has a 1000 vuser license. This means we can test the application upto 1000 concurrent users.If you wish to avail our service, you can provide the basic details of you application and application url.

    We conduct and free 100 user test for one hour and provide you the report.

    If you are satisfies and wish to avail our service we provide a time and money estimation.

    For further details please contact our sales team at [email protected].

  • Quick Start Our Test will undergo following phases:

    Recording the Test Scenario.Running the test.Test Results.

  • Recording the Test ScenarioStarting the recording Click on the "Start recording" button on the controller to start recording the scenario.

  • Recording the Test Scenario contBrowser settings

    NeoLoad will capture pages and record them into a virtual user profile. Choose the name of the profile to record, then select "Adobe RTMP" if your application is using the RTMP protocol. By default, NeoLoad records only HTTP traffic.Next, specify which web browser is to be used for the recording and whether the browser's cache and cookies should be cleared before recording.

  • Recording the Test Scenario cont3. Entering the URL to be recordedThe browser displays the NeoLoad recording page, indicating that the browser settings are correct.The browser is now ready to record the scenario. Enter the URL of the site to be tested and browse as normal.

  • Recording the Test Scenario cont4. Grouping recorded pages by business transactionAt any time during the recording, you may create named containers in which to group the visited pages. These containers represent the business transactions within your scenario.

  • Recording the Test Scenario cont5. Stopping the recordingClose the browser to stop recording. You may also click on the controller's "Stop recording button.

  • Recording the Test Scenario cont6. Creating your first virtual userOnce the recording is finished, a pop-up wizard is displayed.Follow the steps through the wizard.

  • Recording the Test Scenario contOn the "Virtual Users" tab, you may configure the think time for the user. The think time is a simulation of the time spent by the user on the previous page before accessing the current page.This delay may be for each page individually, for all pages globally or variable within a given range.

  • Recording the Test Scenario cont7. Checking the validity of the virtual user

    Complex scenarios may require advanced settings. A failure to implement these settings will result in errors and an unexpected behavior for the virtual user. For example, the virtual user will not create entries in the database.Check the validity of the virtual user via the "Run / Start checking" menu item.

  • Recording the Test Scenario cont

    The "Check Virtual User" dialog displays the HTTP request and the HTTP response of each NeoLoad request.

  • Recording the Test Scenario cont

    NeoLoad automatically flags in error any responses whose HTTP response code is an error code,for example "500 Internal Error". Nevertheless, many applications return error messages within a valid "200 OK" response. In these cases, NeoLoad does not automatically detect the error.If the virtual user does not behave as expected, check the responses to see if they contain an error message or an unexpected content.Failure to handle a dynamic parameter will cause an error. Generally, it means that you may need to extract and inject some data.

  • Recording the Test Scenario cont8. Creating a population

    Click on the "Populations" tab. A pop-up wizard prompts you to create a population for the test.A population is a group of virtual users. In this example, the population only contains the previously recorded virtual user.

  • Running the TestThe Scenarios tab

    Click on the "Runtime" button, then on the "Scenarios" tab.Configure the settings such as test duration, load policy (constant, ramp-up, peaks, custom) and the number of virtual users.

  • Running the Test contRun the test by clicking on "Run" top menu, and then click on the "Start playing" button.

  • Running the Test cont2. The Runtime Overview tabThis panel monitors the test sequence. It provides immediate statistics such as hits/sec., average response time and errors. The test may be stopped at any time by clicking on the "Stop" button.

  • Test ResultsThe Test Summary tab

    The test summary provides general statistics for the test, including total test duration, throughput, total number of hits, number of errors and average response time, together with important information such as slowest pages, pages with the highest error rates etc.

  • Test Results cont2. The Values tab

    This tab allows you to:Quickly plot all the graph curves for a web page, HTTP request, a monitor or an indicator.Sort the request and web page statistics.Use "Filters" to filter the displayed results by load generator, population or virtual user.Use the "Type" drop-down list to switch between Web Pages, HTTP Requests, Performance counters and Indicators.

  • Test Results cont3. The Graphs tab

    The "Graphs" tab can be used to plot a graph curve for any statistic in any request. Simply selectthe required statistic among average response time, hits/sec., error rate etc., then drag and drop a WebPage, a HTTP request or a Performance counter into the graph pane to the right.You may also plot a curve for a previous test by selecting that test in the Results drop-down listor compare two tests by selecting "Compare..." .

  • Test Results cont4. The Errors tab

    This tab displays detailed information on request errors encountered during the test. It itemizesthe requests sent to the server, the server's response and the results of the assertions checking itsvalidity. To help pinpoint the source of the error, you may access the request that precedes the requestcontaining the error from this tab.

  • Communication methodologyNeoload uses agent less communication between client and server.It is based on the Push technology.Push technology is a type of communication where information is "pushed" by the server to the browser, contrary to the normal "pull" principle whereby the browser initiates the request for information. There are several Push methods: polling, long polling or streaming.

  • Thank YouFor Queries on Neolaod or Load testing contact [email protected].

    Business Transaction: A virtual user container groups the different web pages that make up a "businesstransaction". In other words, a container is a set of web pages that carry out abusiness exchange. A typical example of this type of container is the set of pagesused to connect to the application. These containers are clearly marked in the testresults to make analyzing download times easier.A population is a group of virtual user types which allows the application to betested using different business actions. One typical example is when testing a ebusinesswebsite with 90% of users browsing the catalog and 10% making an onlinepurchase.Load variation policy: Defines what type of load you need to put on.Duration policy: How do you want to stop the test, manually, after n iteration or after some specified amount of time.Basically we set load profile here.Runtime information changes/gets modified with time. The parameters which are mentioned here have been previously defined during DESIGN>>Monitor >> Assign a new machine to be monitored >> Select various counters.

    Monitors the load generators' activity: Host - Machine running the load generator. Virtual Users - Number of virtual users currently being run by that load generator. Hit Rate - Average hit rate generated by that load generator. Errors - Current error rate (number of errors per second). CPU Load - CPU load for the machine hosting the load generator. Memory Used - Memory used, expressed as a percentage of the memory allocated to the load generatorprogram (the program's default memory allocation is 384Mb). Throughput - Throughput in Megabits per second for the network interface used on the load generator.If the CPU Load or Memory Used figure regularly exceeds 90%, this indicates that the load generator isoverloaded. Run the test with fewer virtual users or a longer think time, or use additional load generators.