Skip to main content

Makes installing funkload, running tests and generating reports a 'no-brainer'

Project description

collective.recipe.funkload is a nice and simple recipe that allows easy running of funkload tests and generation of reports on them, running ./bin/funkload bench will run all the funkload tests within the buildout and then autogenerate the html reports for them. Report generation requires gnuplot, currently there is no way to cleanly disable this. The reports and supporting xml is stored in the path pointed to by location in your part (defaults to ./var/funkload). You may also have the reports generated in a different directory using report_destination.

Example usage

In order for this to work its magic you need to set a base URL for the tests to be run on, your buildout part will look something like this:

>>> write('buildout.cfg',
... """
... [buildout]
... parts = test1
... index = http://pypi.python.org/simple
... [test1]
... recipe = collective.recipe.funkload
... url = 127.0.0.1:8080
... """)

Running that buildout gives us the funkload script:

>>> print 'start\n', system(buildout)
start
...
Generated script '/sample-buildout/bin/funkload'.

Which passes the host through to the subcommand handler in the recipe:

>>> import os
>>> script = os.path.join(sample_buildout,'bin','funkload')
>>> print open(script,'r').read()
#!...url="127.0.0.1:8080"...

If you don’t specify a URL buildout will fail:

>>> write('buildout.cfg',
... """
... [buildout]
... parts = test1
... index = http://pypi.python.org/simple
... [test1]
... recipe = collective.recipe.funkload
... """)
>>> print 'start\n', system(buildout)
start
...
KeyError: 'You must specify an address to test'

Record

Since version 0.3 you can now use record to create funkload tests even faster:

>>> print system('bin/funkload')
Usage:
bench:  Launch a FunkLoad unit test as load test.
record: Launch a TCPWatch proxy and record activities, then output a
        FunkLoad script or generates a FunkLoad unit test if test_name is specified.
report:  Generate a report from the most recent bench result
test:  Launch a FunkLoad unit test.
<BLANKLINE>

Change history

HISTORY

0.3.1 - 2010-04-19

  • add example usage for PloneFLTestCase [amleczko]

  • pin collective.funkload to version>0.2 [amleczko]

0.3 - 2009-11-23

  • enable test recorder from funkload [amleczko]

  • update doctests [amleczko]

0.2 - 2009-11-01

  • enable funkload bench to run tests in released eggs [toutpt]

0.1 - 2009-08-09

  • Initial release

  • Added funkload script [evilbungle]

  • Added automatic report generation [evilbungle]

Contributors

Alan Hoey, [evilbungle] Tom Lazar, [tomster] Sasha Vincic, [sashav] JeanMichel FRANCOIS [toutpt] Andrew Mleczko, [amleczko]

Download

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective.recipe.funkload-0.3.1.tar.gz (9.3 kB view details)

Uploaded Source

File details

Details for the file collective.recipe.funkload-0.3.1.tar.gz.

File metadata

File hashes

Hashes for collective.recipe.funkload-0.3.1.tar.gz
Algorithm Hash digest
SHA256 c187c6bce9d28cb14d240a4700bd981bb94bdd4fcc9355316d6739dfe466c2d7
MD5 75155a6ffeb758e2fbbdcb90e7c666ce
BLAKE2b-256 7c49db48d585a9d858a2efb980ec0377189877a510ac94f0ec67039bc30a722a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page