root/funkload/trunk/setup.py

Revision 51258, 5.2 kB (checked in by bdelbosc, 2 years ago)

update

Line 
1 #! /usr/bin/env python
2 # (C) Copyright 2005 Nuxeo SAS <http://nuxeo.com>
3 # Author: bdelbosc@nuxeo.com
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License version 2 as published
7 # by the Free Software Foundation.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17 # 02111-1307, USA.
18 #
19 #
20 """FunkLoad package setup
21
22 $Id: setup.py 24768 2005-08-31 14:01:05Z bdelbosc $
23 """
24 import ez_setup
25 ez_setup.use_setuptools()
26 from setuptools import setup, find_packages
27 #from distutils.core import setup
28 from funkload.version import __version__
29
30 setup(
31     name="funkload",
32     version=__version__,
33     description="Functional and load web tester.",
34     long_description="""\
35 FunkLoad is a functional and load web tester, written in Python, whose
36 main use cases are:
37
38 * Functional testing of web projects, and thus regression testing as well.
39
40 * Performance testing: by loading the web application and monitoring
41   your servers it helps you to pinpoint bottlenecks, giving a detailed
42   report of performance measurement.
43
44 * Load testing tool to expose bugs that do not surface in cursory testing,
45   like volume testing or longevity testing.
46
47 * Stress testing tool to overwhelm the web application resources and test
48   the application recoverability.
49
50 * Writing web agents by scripting any web repetitive task, like checking if
51   a site is alive.
52
53
54 Main FunkLoad features are:
55
56 * FunkLoad is free software distributed under the `GNU GPL`.
57
58 * Functional test are pure Python scripts using the pyUnit framework like
59   normal unit test. Python enable complex scenarios to handle real world
60   applications.
61
62 * Truly emulates a web browser (single-threaded) using Richard Jones'
63   webunit:
64
65   - basic authentication support
66   - cookies support
67   - referrer support
68   - http proxy support
69   - fetching css, javascript and images
70   - emulating a browser cache
71   - file upload and multipart/form-data submission
72   - https support
73
74 * Advanced test runner with many command-line options:
75
76   - set the target server url
77   - display the fetched page in real time in your browser
78   - debug mode
79   - green/red color mode
80   - select test case using a regex
81   - support normal pyUnit test
82   - support doctest from a plain text file or embedded in python docstring
83
84 * Turn a functional test into a load test: just by invoking the bench runner
85   you can identify scalability and performance problems.
86
87 * Detailed bench reports in ReST or HTML (and PDF via ps2pdf)
88   containing:
89
90   - the bench configuration
91   - tests, pages, requests stats and charts with percentiles.
92   - the 5 slowest requests.
93   - servers cpu usage, load average, memory/swap usage and network traffic
94     charts.
95   - an http error summary list
96
97 * Easy test customization using a configuration file or command line options.
98
99 * Easy test creation using TCPWatch as proxy recorder, so you can use your web
100   browser and produce a FunkLoad test automatically.
101
102 * Provides web assertion helpers.
103
104 * Provides a funkload.CPSTestCase to ease Zope and Nuxeo CPS testing.
105
106 * Easy to install (EasyInstall) and use, see examples in the demo folder.
107 """,
108     author="Benoit Delbosc",
109     author_email="bdelbosc@nuxeo.com",
110     url="http://funkload.nuxeo.org/",
111     download_url="http://funkload.nuxeo.org/funkload-%s.tar.gz"%__version__,
112     license='GPL',
113     keywords='testing benching load performance functional monitoring',
114     packages= ['funkload'],
115     package_dir={'funkload': 'funkload'},
116     scripts=['scripts/fl-monitor-ctl', 'scripts/fl-credential-ctl',
117              'scripts/fl-run-bench', 'scripts/fl-run-test',
118              'scripts/fl-build-report',
119              'scripts/fl-import-from-tm-recorder',
120              'scripts/fl-install-demo',
121              'scripts/fl-record'],
122     classifiers=[
123         'Development Status :: 4 - Beta',
124         'Environment :: Console',
125         'Intended Audience :: Developers',
126         'Intended Audience :: System Administrators',
127         'Natural Language :: English',
128         'License :: OSI Approved :: GNU General Public License (GPL)',
129         'Operating System :: OS Independent',
130         'Programming Language :: Python',
131         'Topic :: Internet :: WWW/HTTP :: Site Management',
132         'Topic :: Software Development :: Testing',
133         'Topic :: Software Development :: Quality Assurance',
134         'Topic :: System :: Benchmark',
135         'Topic :: System :: Monitoring',
136     ],
137     # setuptools specific keywords
138     install_requires = ['webunit  == 1.3.8',
139                         'docutils >= 0.3.7'],
140     zip_safe=True,
141     package_data={'funkload': ['data/*',
142                                'demo/simple/*', 'demo/zope/*',
143                                'demo/cmf/*', 'demo/xmlrpc/*',
144                                'demo/*.txt',
145                                'tests/*',]},
146     # this test suite works only on an installed version :(
147     # test_suite = "funkload.tests.test_Install.test_suite",
148     )
Note: See TracBrowser for help on using the browser.