Skip to content

Stress tests

By executing tests in this normalised fashion it is easier to compare results between different instances or different patch levels.

This documents normalised stress-testing and references files under stress-tests.

VM tests

  • generate a text file to compare CPU and other factors across VM types, providers or instances which may affect DD performance.

We can compare the resulting logs just with, e.g. vim -d.

DD tests

Currently these tests perform logins and interact with Nextcloud, but it would be interesting to expand them to interact with other services.

Directory contents

This directory contains following files:

  • dd-stress-test.tpl.jmx: template to generate JMeter tests to execute
  • helper script that generates the actual test plan files and executes them. See ./ --help
  • this gives us an idea of how a user would perceive DD to be behaving while under load. Called by ./ by default.


Results will be saved in a results directory, where each subdirectory corresponds to a stress test executed with

The naming scheme for those subdirectories is: DOMAIN_THREADCOUNT_DURATION Where THREADCOUNT and DURATION are the corresponding JMeter parameters.

Each results directory contains:

  • log: the JMeter log
  • results: the JMeter results file
  • html/index.html: the interactive graphs for the data as produced by JMeter
  • selenium/session.html: the session report as would be perceived by a user. Note this requires Python3 and selenium and can be disabled by setting the environment variable: USE_SELENIUM=NO.