Tuesday, July 28, 2009

Assignment 1 (LoadRunner)

LoadRunner

Is an example of CASE tools that used in performance and load testing. It is product developed by Hewlett-Packard(HP). Loadrunner can be used for examining system behavior and performance. LoadRunner can create hundreds and even thousands of virtual users to put the application through the rigors of real-life user loads concurrently. The result generated can be analyzed in details, to explore the reasons for particular behavior. [9]

LoadRunner helps enterprises:

1) Surface bottleneck pre- production

2) Maximize productivity of QA cycles

3) Accelerates deployment


Type CASE tool: Lower CASE Tools

The definition of Lower CASE Tools is a concentrate on the back end activities of the software life cycle and hence support activities like physical design, debugging, construction, testing, integration of software components, maintenance, reengineering and reverse engineering activities. Based on the definition we can conclude that LoadRunner is a Lower CASE Tools because it is majoring in performance or Load testing. Another example of Lower CASE Tools is PRO-IV Application Development (McDonnell Information Systems). [12]


The Phases or Actives of The Software Development Life Cycle that It covers

In this CASE Tools it consist of two phases;

1) Performance Testing – a process to determine how fast a system is can perform under a certain circumstances or condition. For example in a web application, performance testing can determine how many users can log in at a time concurrently to check when is the performance of the web is slow down or crash. It also can be used to validate and verify other quality attribute of a system such reliability of the system and resource usage. In general, performance testing can be used to check whether a system meet the requirements for the performance. It can be used to compare two or more system to determine which one performs better. Or it can be used to find out where or which part of the system performs badly or the part that causes the system does not perform better. [11]

2) Load Testing - the process of putting demand on a system or device and measuring its response. The term load testing is used in different ways in the professional software testing community. Load testing generally refers to the practice of modeling the expected usage of a software program by simulating multiple users accessing the program concurrently. As such, this testing is most relevant for multi-user systems; often one built using a client/server model, such as web servers. [10]



Architecture Overview:




1. LoadRunner works with the use of creating virtual users that acts like a real users operating client software, such as Mozilla Firefox sending requests using the HTTP protocol to IIS or Apache web servers. [8]

2. In order to create a load on different server under test, request from many virtual user clients are generated by ‘Load Generators’. [8]

3. Mercury’s “Controller” program started and stopped these load generator agents. [8]

4. Based on "Scenarios" effecting compiled "Scripts" and associated "Run-time Settings”, the Controller controls load test runs. [8]

5. Scripts are crafted using Mercury's "Virtual user script Generator" (named "V U Gen"), It generates C-language script code to be executed by virtual users by capturing network traffic between Internet application clients and servers. [8]

6. With Java clients, VuGen captures calls by hooking within the client JVM. [8]

7. The Controller monitors each machine status during runs. [8]

8. At the end of each run, the Controller combines its monitoring chart with charts obtained from load generators, and makes them available to the "Analysis" program, which can then create run result reports and graphs for Microsoft Word, Crystal Reports, or an HTML webpage browser. [8]

9. Microsoft Excel can open to perform additional analysis when each HTML report page generated by Analysis includes a link to results in a text file. [8]

10. By using Microsoft Access, errors during each run are stored in a database which can be read. [8]


· Example HP LoadRunner controller

Features:

-Tuning Module Add-In

The LoadRunner Tuning Module allows customers to separate and to deal with system performance bottlenecks. Once the application has been stress tested using LoadRunner, the Tuning Module provides component test libraries and a knowledgebase that help users separate and to deal with performance bottlenecks. [9]

-WAN Emulation Support

This powerful feature set enables LoadRunner to quickly point out the effect of the wide area network (WAN) on application reliability, performance, and response time. Provided through technology from Shunra Software, this WAN emulation capability introduces testing for bandwidth limits, latency, network errors, and more to LoadRunner. [9]

-JBuilder for Java IDE Add-in

LoadRunner now works with Borland's JBuilder integrated development environment (IDE) to create powerful support for J2EE applications. This add-in enables LoadRunner users who create J2EE applications and services with JBuilder to create virtual users based on source code within a JBuilder project. [9]

-Native ICA Support for Citrix MetaFrame

LoadRunner now supports Citrix's Independent Computing Architecture (ICA) for the testing of applications being deployed with Citrix MetaFrame. This support is the first native ICA load testing solution of its kind, jointly developed with Citrix. [9]

-Web Transaction Breakdown Monitor for Isolating Performance Problems

Now you can more efficiently isolate performance problems within your architecture. LoadRunner's Web Transaction Breakdown Monitor splits end-to-end transaction response times for the client, network, and server and provides powerful drill-down capabilities. [9]

-Data Wizard for Data-Driven Testing

LoadRunner's Data Wizard enables you to quickly create data-driven tests and eliminate manual data manipulation. It connects directly to back-end database servers and imports desired data into test scripts. [9]

-Goal-Oriented Testing with AutoLoad

The new AutoLoad technology allows you to pre-define your testing objectives beyond the number of concurrent users to streamline the testing process. [9]

-Enterprise Java Bean Testing

By testing EJB components with LoadRunner, you can identify and solve problems during the early stages of application development. As a result, you can optimize performance before clients have been developed and thereby save time and resources. [9]

-XML Support

With LoadRunner's XML support, you can quickly and easily view and manipulate XML data within the test scripts. [9]



· Example of Hp Virtual User Generator


· Example of HP LoadRunner Analysis


· Example ist of virtual user



Comparison - With Tool and Without Tool


Reference


1. SWEBOK executive editors, Alain Abran, James W. Moore ; editors, Pierre Bourque, Robert Dupuis. (2004). Pierre Bourque and Robert Dupuis. ed. Guide to the Software Engineering Body of Knowledge - 2004 Version. IEEE Computer Society. p. 1-1. ISBN 0-7695-2330-7. http://www.swebok.org/.

Available: www.Wikipedia.com

2. Fundamental Of Software Engineering Project Management By Johan Gouws and Mrs.Leonie Gouws. http://www.bin95.com/ebooks/Software-Engineering-Project-Management.htm

3. Editors, Laurie Williams,Open Seminar For Software Engneering, pp Project Management,introduction. http://openseminar.org/se/modules/2/index/screen.do

4. Crossroad magazine editor,Sebastian Tyrrell, The Many Dimension of Software Process, http://www.acm.org/crossroads/xrds6-4/software.html


5. http://en.wikipedia.org/wiki/Software_testing

6. Software Engineering – Reason and Concept, Nilesh Parekh publish 1.11.2005, http://www.buzzle.com/editorials/1-11-2005-63996.asp

7. IWPSE archive
Proceedings of the Principles of Software Evolution, 7th International Workshop by Kiyoshi Agusa

Pages: 3 - 8

ISBN ~ ISSN:1550-4077 , 0-7695-2211-4

http://portal.acm.org/citation.cfm?id=1021745



No comments:

Post a Comment