A Flood.io client for Python 2 and 3.
$ pip install floodio-pythonInstantiate a client with your Flood API key:
from floodio.client import Client
client = Client('YOURAPIKEY')client.floods is iterable:
for flood in client.floods:
print(flood)or you can get a flood by its uuid:
flood = client.floods['SOMEUUID']A flood has stop, repeat, and refresh methods.
flood.stop()
# keyword arguments are optional.
flood.repeat(grid='SOMEGRIDUUID', region='AWSREGION')
flood.refresh() # pulls the latest state of this floodAccessing flood.status performs an implicit refresh.
flood.status
>>> 'queued'
flood.status
>>> 'running'
flood.status
>>> 'finished'Condensed results are available with flood.report.
flood.report.summary
flood.report.mean_response_time
flood.report.mean_concurrency
flood.report.mean_throughput
flood.report.mean_error_rate
flood.report.mean_apdexand the detailed results are available with flood.results, directly loading the JSON-response.
Any times returned by Flood API V2 are parsed into native Python datetime objects.
eg. flood.started and flood.ended.
You can create a new flood with client.floods.create. Test files are a list of two-tuples
with a filename, and either a file-like object or a string.
flood = client.floods.create(
'jmeter-2.13',
[('test.jmx', your_test_data)],
name='client-test',
duration=300,
threads=200,
rampup=300,
grids='SOMEGRIDUUID',
)