Functional and load web tester.
FunkLoad is a functional and load web tester, written in Python, whose main use cases are:
Functional testing of web projects, and thus regression testing as well.
Performance testing: by loading the web application and monitoring your servers it helps you to pinpoint bottlenecks, giving a detailed report of performance measurement.
Load testing tool to expose bugs that do not surface in cursory testing, like volume testing or longevity testing.
Stress testing tool to overwhelm the web application resources and test the application recoverability.
Writing web agents by scripting any web repetitive task.
Main FunkLoad features are:
Functional test are pure Python scripts using the pyUnit framework like normal unit test. Python enable complex scenarios to handle real world applications.
Truly emulates a web browser (single-threaded) using an enhanced Richard Jones’ webunit:
post any kind of content type like application/xml
basic authentication support
file upload and multipart/form-data submission
accept gzip content encoding
https with ssl/tls by providing a private key and certificate (PEM formatted)
emulating a browser cache
Advanced test runner with many command-line options:
set the target server url
display the fetched page in real time in your browser
debug mode to display http headers
check performance of a single page (or set of pages) inside a test
green/red color mode
select or exclude tests cases using a regex
support normal pyUnit test
support doctest from a plain text file or embedded in python docstring
Turn a functional test into a load test: just by invoking the bench runner you can identify scalability and performance problems. If needed the bench can distributed over a group of worker machines.
Detailed bench reports in ReST, HTML, Org-mode, PDF (using LaTeX/PDF Org-mode export) containing:
the bench configuration
tests, pages, requests stats and charts
the requets that took the most time
monitoring one or many servers cpu usage, load average, memory/swap usage and network traffic charts
an http error summary list
Differential reports to compare 2 bench reports giving a quick overview of scalability and velocity changes.
Trend reports to view the performance evolution with multiple reports.
Easy test customization using a configuration file or command line options.
Provides web assertion helpers to check expected results in responses.
Provides helpers to retrieve contents in responses page using DOM.
Easy to install (EasyInstall).
Comes with examples look at the demo folder.
Successfully tested with dozen of differents web servers: PHP, python, Java…
(C) Copyright 2005-2011 Nuxeo SAS (http://nuxeo.com).
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.