Для малых TPS/RPS хорошо работает в JMeter эмуляция открытой модели нагрузки.
Без таймеров вообще.
Если надо сделать Stable-тест, пусть с TPS = 0.3333 TPS. 1 старт сценария каждые 3 секунды.
На 20 минут. То самое надёжное - просто Thread Group, где в
RumpUp нужно поставит 20 минут или 1200 сек.
А в количестве потоков Thread Count поставить 400 (это 1200 * 0.33333)
Так ничего не зависает. Работает точно. Завершается точно в срок + длительность ответа на последний запрос.
Пробовал для такого сценария использовать точный таймер Presice, он вместо стабильной нагрузки делает сначала 0, потом рост, потом поняв, что все нужные tps выбраны засыпает и получается спад.
Throughput Shaping Timer не работает с дробными TPS, на форме ввести можно, но в коде только целые числа. Именно малую нагрузку с ним не получить. У Кирилла как-то получается, но с большой дробной нагрузкой. С малой мало чего работает.