I’ve always found Locust to be incredibly simple for simulating any user behavior. Very well designed task and user behavior APIs and patterns in it.
I created complex load tests and custom workflows to analyse resulting data thanks to its complete scriptability. Really a nice tool.