• No results found

Open Source Performance Testing Tools

N/A
N/A
Protected

Academic year: 2021

Share "Open Source Performance Testing Tools"

Copied!
10
0
0

Loading.... (view fulltext now)

Full text

(1)

SQS Group Limited Alan Gordon

January 2010

Open Source

(2)

Open Source Tools – The Big Questions

What tools are out there?

When should we use them?

What can we expect to achieve with them?

(3)

Introduction

What Tools Are Out There?

From http://www.opensourcetesting.org/performance.php:  Allmon  Apache JMeter  benerator  CLIF  curl-loader

 Database Opensource Test Suite

 DBMonster  Deluge  Dieseltest  Faban  FunkLoad  FWPTT  Grinder

 Hammerhead 2 - Web Testing

 Hammerora

Open Source Performance Testing Tools

 httperf

 http_load

 IxoraRMS

 JChav

 JCrawler

 Lobo, Continuous Tuning

 MessAdmin  NTime  OpenSTA  OpenWebLoad  p-unit  PandoraFMS  Pylot

 Raw Load Tester

 Seagull  Siege  Sipp  SLAMD  Soap-Stone  stress_driver  TestMaker  TPTEST  Tsung  Valgrind

 Web Application Load Simulator

 Web Polygraph

(4)

A Few Notable Tools

Apache Jmeter

 Java project

 HTTP, FTP, LDAP, TCP, web services

The Grinder

 “A Java Load Testing Framework” – Java / Jython – entire Java/Python library available

 Eclipse to debug scripts

OpenSTA

 Originally written by Cyrano

 Web only, Windows only

WebLOAD

 Open source version of a commercial tool

 Development sponsored by the commercial tool vendor – Radview

SLAMD

 Java-based

 Developed at Sun Microsystems, 2002-2004

(5)

Example: The Grinder

Financial Markets System

 We used the Grinder to simulate various server-to-server calls within the application stack

 Simulated WebSphere (WAS) calls to the data layer servers

 Simulated other calls between IBM DataPower and 3rd party services

 SOAP / HTTP requests to a web service via a SOAP API

 Our findings:

 Grinder was easy to set up & use – given that we had programming skills in the team

 Rewrote the GrinderAnalyzer engine for analysing the results

 Slight problems with scalability – perhaps due to our own script complexity!

 Slight problems with validity of request – had to work hard to simulate WebSphere calls precisely

 Overall the Grinder worked really well

 By and large “does what it says on the tin” – gives you a framework to run your scripts

 A lot of value has been gained for a project lasting 9-12 months

(6)

When Should We Use Them?

Use Them When They Fit Your Organisation/Project Criteria

 Technology / protocol – outside Web area, options may be limited

 Size of test (scalability)

 Complexity of test – the simpler the technology, the more likely to be suitable for open source

 Skills & experience of your team – programming, test design, results analysis

 Long or short-term goals – for a short-term project, need a “quick start” tool

 Can use them to complement existing commercial tools – e.g. to simulate background load

Don’t Use Them Just Because You’re Desperate To Save Cash

 Investment required in team skills

 May take a while to get off the ground – learning & development needed

 Maintenance costs could be higher

 It is worth trying a few tools to ensure you choose the right one

(7)

What Can We Expect To Achieve With Them?

 With enough time & effort, many things will be achievable with an open source tool

 However, knowledge can be difficult to find

 No help manual, no dedicated support – you get what you pay for!

 “No one is under any obligation to fix your problem. If all else fails, you have the source.”

 Sources of information on web may be inconsistent

 That said, user base of the major tools is growing – there is even a book about Jmeter!

Open Source Performance Testing Tools

 I recommend that you invest in creating harnesses & frameworks to make your tests easier

 We created a framework for testing web services with OpenSTA

 Data driven & keyword driven – like the classic GUI automation frameworks

 Effort is reduced by up to 95% - once framework is developed

 With script-driven tools such as the Grinder, your output will be as good as your programmers – but remember to make sure they know how to test too!

(8)

How Do We Need To Alter Our Approach?

Effort Estimation

 The table below shows the estimated effort increase for a “typical” open source tool against a “typical” commercial tool (when implementing it on a new project)

 Of course, there aren’t any such things, and the comparison is dependent on many factors

 However, if you wish to use an estimate for planning, you could do worse than use this...

Test Phase

% Change

(compared to a typical commercial tool)

Preparation

200 – 400% increase

Execution

0 – 50% increase

Analysis

200

– 500% increase

Estimation Factors –

Summary of some considerations mentioned in previous slides:

 Existing skills in team & propensity for learning (especially programming)

 Technology to be tested and whether it is supported by the tool, and how good that support really is

 Whether any previous frameworks are available or whether you are starting from scratch

 The complexity of your test requirements (business processes, output required)

(9)

Summary

Greater Success Is Likely If You...

 Allow months not days to get up to speed

 Depending on your choice of tool – make sure you have a programmer on the team

 Document as you go – create your own help file

 Aim strategically – reuse throughout your organisation

 Aim to complement commercial tools with open source, not completely replace them

(10)

7-11 Moorgate | London, EC2R 6AF, United Kingdom Tel.: +44 (0) 20 7448 4620 | Fax: +44 (0) 20 7448 4651 E-Mail: [email protected]

References

Related documents

rural and urban ZIP codes that have been served by small broadband providers are much.. more racially diverse than those that have no small

A second later, the black short spear that fell —— or the weapon —— let out a heavy metallic sound as it stabbed into the stone floor on the ground..?. The screams let out

Most endowment and education policies provide for payment of  partial maturities after a given duration. The partial maturity is normally paid on set dates in the

SNMP notification component 3-2 SolutionBank-see Knowledge Base P-ix standalone mode 1-15 FTP proxy 1-28 HTTP proxy 1-15 multiple servers 1-16 suspicious files D-7 T technical

The absorbance and opticl constants (refractive index, extinction coefficient, real and imaginary parts of dielectric constant, optical conductivity) increase with the

Los hallazgos obtenidos en diversos estudios han demostrado que la práctica regular y continua de la meditación produce diferentes efectos beneficiosos sobre el organismo, algunos

Unlike standard connections using telephone wires, which you share with other users, a FibreSpeed connection can be dedicated to your business alone, guaranteeing your business

An interface’s input guard is used to stop the environment from being able to send messages to the port index of a simulator—messages which should only come from an ideal