PERFORMANCE-TESTING TOOLS

15.4 PERFORMANCE-TESTING TOOLS

15.4.1 LoadRunner

LoadRunner is a testing tool for performance and load testing of software applica- tions; it proceeds by simulating arbitrary levels of workload (in the form of concurrent users) on an application under test and observing its behavior.

LoadRunner

Source Hewlett Packard Web page

http://www8.hp.com/us/en/software-solutions/loadrunner-load- testing/index.html?#.Udr82zs9-td

Access Commercial Target language(s)

Web apps, mail, databases, and so on Life cycle phase

Performance testing Test phase

Test management

Sample example of use : The main artifact that LoadRunner deals with is that of a load scenario; a load scenario is defined by a set of virtual users, along with charac- teristics of their demands on the system under test. LoadRunner enables the tester to create, edit, save, and invoke load scenarios. When a load scenario is invoked on an application, it enables the tester to observe and analyze the behavior of the system under the workload imposed by the load scenario. Once the scenario has completed its execution, Load Runner delivers a table of statistics, which may include such details as the following:

• Tables showing the number of active virtual users, the number of processed transactions, and the number of failed transactions. • Graphs plotting a variety of parameters as a function of time, including number of virtual users, response time, number of hits per second, and system resources.

15.4 PERFORMANCE-TESTING TOOLS 339

• Statistics (such as Max, Min, Average, and Standard deviation) of relevant para- meters, such as rate of occupancy of processor time, file data operations per sec- ond, processor queue length, and page faults per second.

The main strength of LoadRunner is clearly its ability to simulate arbitrary levels of workload, along with its ability to capture detailed statistical information on the behavior of the program under test; this information is a great resource to a tester who wants to analyze the operational properties of a software application.

15.4.2 Grinder

Grinder is a desktop application that enables the tester to test a software application under controlled workload conditions; to this effect, Grinder uses a specialized script- ing language called Jython, which is derived from Python.

Grinder

Source Freeware Web page

http://grinder.sourceforge.net/ Access

Open source Target language(s)

Web applications Life cycle phase

Performance testing, load testing Test phase

Test management

Sample example of use : When Grinder is called, a window opens with four tabs, labeled Graphs, Results, Processes, and Scripts. Under the Processes tab, we config- ure the agent processes that act upon the application under test. Under the Script tab, we are given the opportunity to edit test scripts or to invoke test scripts that are already written in Jython. We start the test codified in the selected script by pressing the button labeled “start process.” Upon completion of the test, we obtain statistics about the per- formance of the target application. For a transaction processing application, these may include such details as the following:

• Number of tests, divided into number of successful tests and number of failures. • Mean number of transactions per second and peak number of transactions per

second. • Mean response time, divided into mean time to resolve host, mean time to estab- lish connection, and mean time to access the first byte. • Mean response length and number of response bytes per second.

340 SOFTWARE TESTING TOOLS

Among the strengths of the Grinder, we can cite its ability to load test any appli- cation that has a Java API, its ability to support detailed test scripts written in Jython, and its ability to deploy a wide range of distributed load injectors (i.e., processes that simulate the workload on the system).

15.4.3 QF-Test

QF-Test is a tool for the creation, execution, and management of automated system and load tests for Java and Web applications with a GUI. It is compatible with a wide range of development technologies and development environments, including Swing, JavaFX, and SWT and supports cross-browser testing of web GUI. It can test static html web pages as well as dynamic web applications developed in Ajax technologies.

QF-Test

Source Quality first software Web page

http://www.qfs.de/ Access

Commercial Target language(s)

Java, web applications Life cycle phase

Performance testing, reliability testing Test phase

Test management

Sample example of use : QF-Test has a capture-and-replay function that enables it to run individual tests or complete test suites by merely starting the recording function then manually executing whatever test script the tester wants. Whenever the test script is invoked, it executes the test on the application and produces a configurable report of the execution including statistics about possible errors. Because of its scalability, this tool can be used for system-level testing.

15.4.4 Appvance PerformanceCloud

Appvance PerformanceCloud is a tool that specializes in testing the performance and load capabilities of web applications. It is compatible with Ajax development envir- onments, supports end-to-end testing to a great level of detail through all the steps of the application, can simulate millions of simultaneous users using a wide variety of web browsers, down to fine detail such as every keystroke and every message transfer, and supports pervasive agile integration. In addition, it requires little or no coding and supports customizable report generation, thereby providing faster test development.

15.4 PERFORMANCE-TESTING TOOLS 341

Appvance performanceCloud

Source

Appvance

Web page http://appvance.com/products/#sthash.ihZqzsRq.dpbs Access

Commercial, free demo, free trial Target language(s)

Web applications

Life cycle phase Performance testing, load testing Test phase

Test scripts, test execution

For a simulated user load, the tool provides a detailed analysis of system perfor- mance, including information about the performance of individual transactions, their rate of success, their resource usage, their execution path, and so on. It also offers a large menu of measures one can collect on the application under test, such as its overall resource usage, its failure history, its performance scalability, or its throughput.

15.4.5 JMeter

Apache JMeter enables the tester to analyze the performance of an application under controllable workload conditions; it can be used to evaluate system performance on static and dynamic resources and to simulate a transaction load on a server, a group of servers, or a network. It provides performance data under a wide variety of textual and graphic formats, under arbitrarily controllable heavy workloads.

Apache JMeter

Source Apache software foundation Web page

http://jmeter.apache.org/ Access

Open source Target language(s)

SQL, http, Java Life cycle phase

System-level Test phase

Test driver design and execution, test outcome analysis, performance analysis

Sample example of use : The basic artifact in JMeter testing is the test plan, which is a sequence of steps that JMeter executes whenever it is invoked. JMeter supports the tester in editing a test plan, which may contain any combination of the following elements:

• One or more thread groups, where each thread group is a collection of concurrent processes submitting simultaneous queries to the system under test.

342 SOFTWARE TESTING TOOLS

• Logic controllers, which coordinate the deployment of the thread groups by

means of control constructs (similar to programming language constructs). • Sample-generating controllers, which generate requests (e.g., http requests) that each thread group will produce when they are activated. • Listeners, which are JMeter functions that collect performance data and store it as part of the application performance analysis. • Assertions, which are test scripts that enable the tester to check whether the appli- cation under test is returning the expected results.

The output of JMeter depends on the format the tester has specified in the Listener and may include detailed information about the execution of the system under test (functions invoked in the system, number of http queries, number of database queries, number of ftp requests, number of active and sleeping tasks, etc.) as well as the resource usage of the system (CPU usage, memory usage, buffer usage, communica- tion infrastructure bandwidth, etc.).

Among the strengths of JMeter, we may mention the following: • Because JMeter is an open-source tool, a user may adapt to her/his needs and

customize it as needed. • One may build a relatively sophisticated test plan without prior knowledge of test scripts or scripting languages; also, the process of constructing test plans is fairly simple, thanks to a user-friendly GUI.

Dokumen yang terkait

Analisis Komparasi Internet Financial Local Government Reporting Pada Website Resmi Kabupaten dan Kota di Jawa Timur The Comparison Analysis of Internet Financial Local Government Reporting on Official Website of Regency and City in East Java

19 819 7

ANTARA IDEALISME DAN KENYATAAN: KEBIJAKAN PENDIDIKAN TIONGHOA PERANAKAN DI SURABAYA PADA MASA PENDUDUKAN JEPANG TAHUN 1942-1945 Between Idealism and Reality: Education Policy of Chinese in Surabaya in the Japanese Era at 1942-1945)

1 29 9

Improving the Eighth Year Students' Tense Achievement and Active Participation by Giving Positive Reinforcement at SMPN 1 Silo in the 2013/2014 Academic Year

7 202 3

Improving the VIII-B Students' listening comprehension ability through note taking and partial dictation techniques at SMPN 3 Jember in the 2006/2007 Academic Year -

0 63 87

The Correlation between students vocabulary master and reading comprehension

16 145 49

Improping student's reading comprehension of descriptive text through textual teaching and learning (CTL)

8 140 133

The correlation between listening skill and pronunciation accuracy : a case study in the firt year of smk vocation higt school pupita bangsa ciputat school year 2005-2006

9 128 37

Perancangan Sistem Informasi Akuntansi Laporan Keuangan Arus Kas Pada PT. Tiki Jalur Nugraha Ekakurir Cabang Bandung Dengan Menggunakan Software Microsoft Visual Basic 6.0 Dan SQL Server 2000 Berbasis Client Server

32 174 203

Pengaruh Kualitas Software Aplikasi pengawasan kredit (C-M@X) Pt.PLN (PERSERO) Distribusi Jawa Barat Dan Banten (DJBB) Terhadap Produktivitas Kerja karyawan UPJ Bandung Utara

5 72 130

Transmission of Greek and Arabic Veteri

0 1 22