mirror of
https://github.com/suitenumerique/drive.git
synced 2026-09-23 10:05:14 +02:00
We need to measure backend response times and error codes from 100 up to 100k simultaneous users, on any instance. The scenario simulates a full user session (browse, recents, shared-with-me, folder creation, upload, trash, hard-delete) with randomized think times, using the e2e auth endpoint instead of the IDP, out of scope like the WOPI editors. Everything is property-driven (BASE_URL, USERS, USER_OFFSET...) so the same plan runs unchanged against any instance and across distributed injectors, each with its own USER_OFFSET to keep generated user emails globally unique. Uploads reproduce the frontend flow (item creation, presigned PUT to the object storage, upload-ended) and randomly pick a fixture entry; folder entries mirror the frontend folder upload by materializing the hierarchy before uploading each file into its parent.
14 lines
614 B
Groovy
14 lines
614 B
Groovy
// Computes the parent item id and the title for the subfolder being created.
|
|
// current_updir holds a relative path like "mon_dossier/1er Janvier 2024";
|
|
// its parent is either the iteration root folder (single segment) or an
|
|
// already-created subfolder whose id was stored under "upfid_<parent path>".
|
|
def rel = vars.get("current_updir")
|
|
def slash = rel.lastIndexOf("/")
|
|
if (slash == -1) {
|
|
vars.put("cdir_parent", vars.get("folder_id"))
|
|
vars.put("cdir_title", rel)
|
|
} else {
|
|
vars.put("cdir_parent", vars.get("upfid_" + rel.substring(0, slash)))
|
|
vars.put("cdir_title", rel.substring(slash + 1))
|
|
}
|