Functional and load web tester.
Project description
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, like checking if
a site is alive.
Main FunkLoad features are:
* FunkLoad is free software distributed under the `GNU GPL`_.
* 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 Richard Jones'
webunit_:
- basic authentication support
- cookies support
- referrer support
- fetching css, javascript and images
- emulating a browser cache
- file upload and multipart/form-data submission
- post any kind of content type like ``application/xml``
- https support
- http_proxy support
* 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
- 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.
* Detailed bench reports in ReST or HTML (and PDF via ps2pdf)
containing:
- the bench configuration
- tests, pages, requests stats and charts.
- the 5 slowest requests.
- monitoring one or many servers cpu usage, load average, memory/swap
usage and network traffic charts.
- an http error summary list
View a `report example <http://funkload.nuxeo.org/report-example/test_seam_java6/>`.
* Differential reports to compare 2 bench reports giving a quick overview of
scalability and velocity changes.
View a `diff report example <http://funkload.nuxeo.org/report-example/diff_seam_java_6_vs_5/>`.
* Easy test customization using a configuration file or command line options.
* Easy test creation using embeded TCPWatch as proxy recorder, so you can
use your web browser and produce a FunkLoad test automatically, including
file upload or any ajax call.
* Provides web assertion helpers to check expected results in responses.
* Provides helpers to retrieve contents in responses page using DOM.
* Provides a funkload.CPSTestCase to ease Zope and Nuxeo CPS testing.
* Easy to install (EasyInstall_) and use, see examples in the demo folder.
* Works fine with CPS or any Zope application, CherryPy, Nuxeo EP or any
JBoss Seam JSF MyFaces applications ...
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, like checking if
a site is alive.
Main FunkLoad features are:
* FunkLoad is free software distributed under the `GNU GPL`_.
* 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 Richard Jones'
webunit_:
- basic authentication support
- cookies support
- referrer support
- fetching css, javascript and images
- emulating a browser cache
- file upload and multipart/form-data submission
- post any kind of content type like ``application/xml``
- https support
- http_proxy support
* 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
- 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.
* Detailed bench reports in ReST or HTML (and PDF via ps2pdf)
containing:
- the bench configuration
- tests, pages, requests stats and charts.
- the 5 slowest requests.
- monitoring one or many servers cpu usage, load average, memory/swap
usage and network traffic charts.
- an http error summary list
View a `report example <http://funkload.nuxeo.org/report-example/test_seam_java6/>`.
* Differential reports to compare 2 bench reports giving a quick overview of
scalability and velocity changes.
View a `diff report example <http://funkload.nuxeo.org/report-example/diff_seam_java_6_vs_5/>`.
* Easy test customization using a configuration file or command line options.
* Easy test creation using embeded TCPWatch as proxy recorder, so you can
use your web browser and produce a FunkLoad test automatically, including
file upload or any ajax call.
* Provides web assertion helpers to check expected results in responses.
* Provides helpers to retrieve contents in responses page using DOM.
* Provides a funkload.CPSTestCase to ease Zope and Nuxeo CPS testing.
* Easy to install (EasyInstall_) and use, see examples in the demo folder.
* Works fine with CPS or any Zope application, CherryPy, Nuxeo EP or any
JBoss Seam JSF MyFaces applications ...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
funkload-1.13.0.tar.gz
(120.1 kB
view details)
Built Distribution
funkload-1.13.0-py2.6.egg
(259.4 kB
view details)
File details
Details for the file funkload-1.13.0.tar.gz
.
File metadata
- Download URL: funkload-1.13.0.tar.gz
- Upload date:
- Size: 120.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 39439301985994440ed9778106d5c0ec4286af062e9073b79f0437f6b887a1ee |
|
MD5 | 2018bf702dd30b30174af2d97cae66b1 |
|
BLAKE2b-256 | 4f826797e99017101d3803fdce6bc59d187887e948f7178b54a9a14a6dd450c5 |
File details
Details for the file funkload-1.13.0-py2.6.egg
.
File metadata
- Download URL: funkload-1.13.0-py2.6.egg
- Upload date:
- Size: 259.4 kB
- Tags: Egg
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 619997f4db92f465e9f9170815aa95202d0788ef1946c98d484b2e1f94710c9e |
|
MD5 | af8ef9bff7e225aad33985340bb9a57c |
|
BLAKE2b-256 | d32090d3a2c7df9749efcc01b6065b644484bd348d4c679e48afab3cc6a91a0f |