File: README.txt

package info (click to toggle)
funkload 1.16.1-4
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 1,176 kB
  • ctags: 932
  • sloc: python: 8,102; makefile: 334; perl: 23
file content (136 lines) | stat: -rw-r--r-- 4,684 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
Introduction
==============

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.

Features
---------

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_:

  - get/post/put/delete support
  - post any kind of content type like ``application/xml``
  - DAV support
  - basic authentication support
  - file upload and multipart/form-data submission
  - cookies support
  - referrer support
  - https support
  - https with ssl/tls by providing a private key and certificate (PEM
    formatted)
  - http_proxy support
  - fetching css, javascript and images
  - 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.

* 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.

* Easy to install (EasyInstall_).

* Comes with examples look at the demo_ folder.

* Successfully tested with dozen of differents web servers: PHP,
  python, Java...

License
----------

FunkLoad_ is free software distributed under the `GNU GPL`_ license.

\(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.


.. _FunkLoad: http://funkload.nuxeo.org/
.. _Org-mode: http://orgmode.org/
.. _TCPWatch: http://hathawaymix.org/Software/TCPWatch/
.. _webunit: http://mechanicalcat.net/tech/webunit/
.. _pyUnit: http://pyunit.sourceforge.net/
.. _API: api/index.html
.. _Nuxeo: http://www.nuxeo.com/
.. _`python cheese shop`: http://www.python.org/pypi/funkload/
.. _EasyInstall: http://peak.telecommunity.com/DevCenter/EasyInstall
.. _`GNU GPL`: http://www.gnu.org/licenses/licenses.html#GPL
.. _doctest: http://docs.python.org/lib/module-doctest.html
.. _demo: https://github.com/nuxeo/FunkLoad/tree/master/src/funkload/demo/

.. Local Variables:
.. mode: rst
.. End:
.. vim: set filetype=rst: