From 3c7d9aa1255401eaed3d6338358cf0ea88b3768c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D1=80=D0=BE=D0=B7=D0=B4=D0=B5=D0=B2?= Date: Tue, 20 Jan 2026 18:17:31 +0000 Subject: [PATCH] =?UTF-8?q?=D0=97=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B=20=D0=B2=20=C2=AB?= =?UTF-8?q?/=C2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nikitadr.jmx | 11029 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 11029 insertions(+) create mode 100644 nikitadr.jmx diff --git a/nikitadr.jmx b/nikitadr.jmx new file mode 100644 index 0000000..6bb1bc4 --- /dev/null +++ b/nikitadr.jmx @@ -0,0 +1,11029 @@ + + + + + + + + HOSTNAME + sandbox + = + + + PROTOCOL + http + = + + + PORT + 23232 + = + + + + + + + + + + true + false + + + + + + admin_login + admin + = + + + admin_password + admindev + = + + + + + + , + UTF-8 + users.csv + true + false + true + shareMode.all + false + user_login,user_password + + + + + + 1 + 1 + true + continue + + 1 + false + + + + + + Test Plan + Test Plan + TF_UC05_Filtration + + + + + + + + + + false + + + + 1 + 0 + 0 + + + + 4000 + 1000 + + + + + + + + + false + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + / + true + GET + true + false + + + + + + + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /login/ + true + GET + true + false + + + + true + next + / + = + true + + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + + + Referer + http://sandbox:23232/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /login/ + true + POST + true + false + + + + false + username + ${admin_login} + = + true + + + false + password + ${admin_password} + = + true + + + true + next + / + = + true + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + + + + + + + Referer + http://sandbox:23232/login/?next=/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + http://sandbox:23232 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + Your username and password didn't match. Please try again + + + Assertion.response_data + false + 20 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*)\b\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + + + + + + + false + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + / + true + GET + true + false + + + + + + + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /login/ + true + GET + true + false + + + + true + next + / + = + true + + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + + + Referer + http://sandbox:23232/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + + randomChoice + ${__Random(0,1,)} + = + + + + + + + ${__jexl3(${randomChoice} == 1)} + false + true + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /login/ + true + POST + true + false + + + + false + username + ${user_login} + = + true + + + false + password + ${user_password} + = + true + + + true + next + / + = + true + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + + + + + + + Referer + http://sandbox:23232/login/?next=/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + http://sandbox:23232 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + Your username and password didn't match. Please try again + + + Assertion.response_data + false + 20 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*)\b\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + random_ticket_id_from_page + $.data[*].id + 0 + + + + + + ${__jexl3(${randomChoice} == 0)} + false + true + + + + localhost + 8086 + ${PROTOCOL} + /query + true + GET + true + false + + + + false + test + = + true + db + + + false + select%20*%20from%20sanbox%20limit%201 + = + true + q + + + + + + + user_login_db + $.results[0].series[0].values[0][1] + 1 + + + + user_password_db + $.results[0].series[0].values[0][2] + 1 + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /login/ + true + POST + true + false + + + + false + username + ${user_login_db} + = + true + + + false + password + ${user_password_db} + = + true + + + true + next + / + = + true + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + + + + + + + Referer + http://sandbox:23232/login/?next=/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + http://sandbox:23232 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + Your username and password didn't match. Please try again + + + Assertion.response_data + false + 20 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*)\b\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + random_ticket_id_from_page + $.data[*].id + 0 + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_AdminLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /system_settings/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /admin/auth/user/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/system_settings/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /admin/auth/user/add/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/${${admin_login}_login}/auth/user/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /admin/auth/user/add/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + username + ${USER_NAME} + = + true + + + true + password1 + ${USER_PASSWORD} + = + true + + + true + password2 + ${USER_PASSWORD} + = + true + + + false + _save + Save + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/${${admin_login}_login}/auth/user/add/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + USER_NAME + USER_PASSWORD + DATE_JOIN_0 + DATE_JOIN_1 + FIRST_NAME + LAST_NAME + EMAIL + + + + ${__RandomString(6,aeysdtrguno,)} + ${__RandomString(8,AESsdtrguno,)} + ${__RandomDate(,2025-12-01,2025-12-31,,)} + ${__time(HH:mm:ss,)} + ${__RandomString(8,1234QWERasdf,)} + ${__RandomString(8,1234QWERasdf,)} + ${__RandomString(10,abcdefghijklmnopqrstuvwxyz,)}@gmail.com + + + false + + + + URL + USER_ID + ^http:\/\/sandbox:23232\/admin\/auth\/user/(\d*)\/change\/ + $1$ + + false + 1 + + + + + Please correct the error below. + + ERROR_USER_NOT_CREATED + Assertion.response_data + false + 20 + ass + + + + + ${JMeterThread.last_sample_ok} + false + true + + + + true + + + String csvFile = "users.csv" +def userLogin = vars.get("USER_NAME") +def userPassword = vars.get("USER_PASSWORD") +if(${JMeterThread.last_sample_ok}){ + try { + File file = new File(csvFile) + boolean fileExists = file.exists() + + FileWriter writer = new FileWriter(file, true) + + if (!fileExists || file.length() == 0) { + writer.write("Login,Password\n") + } + + writer.write(userLogin + "," + userPassword + "\n") + writer.close() + + log.info(userLogin + "," + userPassword + "\n") + + } catch (Exception e) { + log.error("error " + e.getMessage()) + } +} + groovy + + + + localhost + 8086 + ${PROTOCOL} + /write?db=test + true + POST + true + true + + + + false + sanbox,login=${USER_NAME} password="${USER_PASSWORD}" + = + + + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /admin/auth/user/${USER_ID}/change/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + username + ${USER_NAME} + = + true + + + false + first_name + ${FIRST_NAME} + = + true + + + false + last_name + ${LAST_NAME} + = + true + + + false + email + ${EMAIL} + = + true + + + false + is_active + on + = + true + + + false + is_staff + on + = + true + + + false + last_login_0 + + = + true + + + false + last_login_1 + + = + true + + + false + date_joined_0 + ${DATE_JOIN_0} + = + true + + + true + date_joined_1 + ${DATE_JOIN_1} + = + true + + + false + initial-date_joined_0 + ${DATE_JOIN_0} + = + true + + + true + initial-date_joined_1 + ${DATE_JOIN_1} + = + true + + + false + _save + Save + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/${${admin_login}_login}/auth/user/5/change/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_AdminLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /admin/auth/user/add/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/${${admin_login}_login}/auth/user/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /admin/auth/user/add/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + username + ${USER_NAME} + = + true + + + true + password1 + ${__RandomString(8,ASD123fghjk,PASSWORD)} + = + true + + + true + password2 + ${PASSWORD} + = + true + + + false + _save + Save + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/${${admin_login}_login}/auth/user/add/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + USER_NAME + USER2a_PASSWORD + DATE_JOIN_0 + DATE_JOIN_1 + FIRST_NAME + LAST_NAME + EMAIL + + + + ${__RandomString(6,aeysdtrguno,)} + ${__RandomString(8,AESsdtrguno,)} + ${__RandomDate(,2025-12-01,2025-12-31,,)} + ${__time(HH:mm:ss,)} + ${__RandomString(8,1234QWERasdf,)} + ${__RandomString(8,1234QWERasdf,)} + ${__RandomString(10,abcdefghijklmnopqrstuvwxyz,)}@gmail.com + + + false + + + + URL + USER_ID + ^http:\/\/sandbox:23232\/admin\/auth\/user/(\d*)\/change\/ + $1$ + + false + 1 + + + + + Please correct the error below. + + ERROR_USER_NOT_CREATED + Assertion.response_data + false + 20 + ass + + + + + ${JMeterThread.last_sample_ok} + false + true + + + + true + + + String csvFile = "users.csv" +def userLogin = vars.get("USER_NAME") +def userPassword = vars.get("PASSWORD") +if(${JMeterThread.last_sample_ok}){ + try { + File file = new File(csvFile) + boolean fileExists = file.exists() + + FileWriter writer = new FileWriter(file, true) + + if (!fileExists || file.length() == 0) { + writer.write("Login,Password\n") + } + + writer.write(userLogin + "," + userPassword + "\n") + writer.close() + + log.info(userLogin + "," + userPassword + "\n") + + } catch (Exception e) { + log.error("error " + e.getMessage()) + } +} + groovy + + + + localhost + 8086 + ${PROTOCOL} + /write?db=test + true + POST + true + true + + + + false + sanbox,login=${USER_NAME} password="${USER2a_PASSWORD}" + = + + + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /admin/auth/user/${USER_ID}/change/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + username + ${USER_NAME} + = + true + + + false + first_name + ${FIRST_NAME} + = + true + + + false + last_name + ${LAST_NAME} + = + true + + + false + email + ${EMAIL} + = + true + + + false + is_active + on + = + true + + + false + is_staff + on + = + true + + + false + last_login_0 + + = + true + + + false + last_login_1 + + = + true + + + false + date_joined_0 + ${DATE_JOIN_0} + = + true + + + true + date_joined_1 + ${DATE_JOIN_1} + = + true + + + false + initial-date_joined_0 + ${DATE_JOIN_0} + = + true + + + true + initial-date_joined_1 + ${DATE_JOIN_1} + = + true + + + false + _save + Save + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/${${admin_login}_login}/auth/user/5/change/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + + QUEUE + TITLE + BODY + PRIORITY + DUE_DATE + SUBMITTER_EMAIL + ASSIGNED_TO + + + + ${__Random(1,2,)} + ${__RandomString(6,asdfghjkl,)} + ${__RandomString(6,asdfghjkl,)} + ${__Random(1,5,)} + ${__RandomDate(,2025-12-20,2025-12-31,,)} ${__time(HH:mm:ss,)} + ${__RandomString(6,asdfghjkl,)} + ${__Random(1,34,)} + + + false + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/submit/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /tickets/submit/ + true + POST + true + true + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + queue + ${__Random(1,2,)} + = + true + + + false + title + ${__RandomString(6,asdfghjkl,)} + = + true + + + false + body + ${__RandomString(6,asdfghjkl,)} + = + true + + + false + priority + ${__Random(1,5,)} + = + true + + + false + due_date + ${__RandomDate(,2025-12-20,2025-12-31,,)} ${__time(HH:mm:ss,)} + = + true + + + false + submitter_email + ${__RandomString(10,abcdefghijklmnopqrstuvwxyz,)}@gmail.com + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/submit/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 2 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 10 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + records_total + $.recordsTotal + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 3 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + ${start_from} + = + true + + + false + length + 10 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + true + + + def recordsTotal = vars.get("records_total") +int limitOfTicketsOnPage = 10 +int countOfPages = recordsTotal.toInteger()/limitOfTicketsOnPage +int randomNumber = new Random().nextInt(countOfPages) +int startFrom = randomNumber * limitOfTicketsOnPage +log.info(String.valueOf(startFrom)) +vars.put("start_from", String.valueOf(startFrom)) + groovy + + + + random_ticket_id_from_page + $.data[*].id + 0 + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_AdminLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + + + filter_by_assiged_to + assigned_to + = + + + assigned_to_unassigned + -1 + = + + + assigned_to_admin + 1 + = + + + filter_by_queue + queue + = + + + queue_django_helpdesk + 1 + = + + + queue_some_product + 2 + = + + + filter_by_status + status + = + + + status_open + 1 + = + + + status_reopened + 2 + = + + + status_resolved + 3 + = + + + status_closed + 4 + = + + + status_duplicated + 5 + = + + + filter_by_date_from + date_from + = + + + filter_by_date_to + date_to + = + + + filter_by_keyword + q + = + + + filter_by_knowledgeIbase_item + kbitem + = + + + kbitem_uncategorized + -1 + = + + + kbitem_kb_cat1_django_helpdesk + 1 + = + + + kbitem_kb_cat1_contributing_to_django_helpdesk + 2 + = + + + kbitem_kb_cat2_something_else + 3 + = + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /tickets/ + true + GET + true + false + + + + false + sortx + created + = + true + + + false + ${filter_by_status} + ${status_open} + = + true + + + false + ${filter_by_status} + ${status_reopened} + = + true + + + false + ${selected_filter_value} + = + true + ${selected_filter} + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*=)\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + request_headers + filter_field + &(?!status)(\w+)=(-?\d+) + $1$ + + false + 1 + + + + request_headers + filter_field_parameter + &(?!status)(\w+)=(-?\d+) + $1$ + + false + 2 + + + + groovy + + + true + Random rand = new Random() +def filters = [ +vars.get("filter_by_assiged_to"), +vars.get("filter_by_queue"), +vars.get("filter_by_keyword"), +vars.get("filter_by_knowledgeIbase_item") +] +def assignedToValues = [ +vars.get("assigned_to_unassigned"), +vars.get("assigned_to_admin") +] +def queueValues = [ +vars.get("queue_django_helpdesk"), +vars.get("queue_some_product") +] +def kbitemValues = [ +vars.get("kbitem_uncategorized"), +vars.get("kbitem_kb_cat1_django_helpdesk"), +vars.get("kbitem_kb_cat1_contributing_to_django_helpdesk"), +vars.get("kbitem_kb_cat2_something_else") +] +def selectedFilterValue +def selectedFilter = filters[rand.nextInt(filters.size())] +switch(selectedFilter) { + case "queue": + selectedFilterValue = queueValues[rand.nextInt(queueValues.size())] + break + + case "assigned_to": + selectedFilterValue = assignedToValues[rand.nextInt(assignedToValues.size())] + break + + case "kbitem": + selectedFilterValue = kbitemValues[rand.nextInt(kbitemValues.size())] + break + + default: + selectedFilter = "queue" + selectedFilterValue = "1" + log.warn("something goes wrong") +} +vars.put("selected_filter", selectedFilter) +vars.put("selected_filter_value", selectedFilterValue) + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + + ${__groovy(Math.random() <= 0.1)} + false + true + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /save_query/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + true + query_encoded + ${QUERY_TOKEN} + = + true + + + false + title + ${__RandomString(8,qazwsxedcrfv,)} + = + true + + + + + + + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + request_headers + query_id + \bsaved_query=(\d+) + $1$ + + false + 1 + + + + groovy + + + true + vars.put("random_chance", String.valueOf(${__groovy(Math.random())})) + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=created&queue=1&status=1&status=2&date_from=&date_to=&q= + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + groovy + + + true + import groovy.json.JsonSlurper +def jsonSlurper = new JsonSlurper() +def jsonResponse = jsonSlurper.parseText(prev.getResponseDataAsString()) +def filter_field = vars.get("filter_field") +def filter_field_parameter = vars.get("filter_field_parameter") +switch(filter_field) { + case "queue": + checkQueueFilter(jsonResponse, filter_field_parameter) + break + case "assigned_to": + checkAssignedToFilter(jsonResponse, filter_field_parameter) + break + case "kbitem": + checkKbitemFilter(jsonResponse, filter_field_parameter) + break + default: + log.warn("Неизвестный фильтр: ${filter_field}") + } + +def checkQueueFilter(result, expectedQueueId) { + def expectedId = expectedQueueId as Integer + def mismatched = [] + + result.data.each { item -> + if (item.queue.id != expectedId) { + AssertionResult.setFailure(true) + def errorMsg = "Найдены тикеты с неверным queue.id (ожидался ${expectedId}): " + AssertionResult.setFailureMessage(errorMsg) + } + } + + if (mismatched.isEmpty()) { + log.info("Все ${result.data.size()} тикетов принадлежат очереди ID ${expectedId}") + } +} + +def checkAssignedToFilter(result, paramValue) { + def expectedValue = paramValue as Integer + + if (expectedValue == -1) { + def assignedTickets = [] + + result.data.each { item -> + if (item.assigned_to != "None" && item.assigned_to != null) { + assignedTickets.add("Тикет ${item.id}: assigned_to='${item.assigned_to}'") + } + } + + if (assignedTickets.isEmpty()) { + log.info(" Все ${result.data.size()} тикетов не назначены (unassigned)") + } else { + def errorMsg = "Найдены назначенные тикеты: " + assignedTickets.join(", ") + AssertionResult.setFailure(true) + AssertionResult.setFailureMessage(errorMsg) + } + } else { + log.info("Проверка назначения на пользователя ID ${expectedValue}") + } +} + +def checkKbitemFilter(result, paramValue) { + def expectedValue = paramValue as Integer + + if (expectedValue == -1) { + def categorizedTickets = [] + + result.data.each { item -> + if (item.kbitem && item.kbitem != "") { + categorizedTickets.add("Тикет ${item.id}: kbitem='${item.kbitem}'") + } + } + + if (categorizedTickets.isEmpty()) { + log.info("Все ${result.data.size()} тикетов без категории базы знаний") + } else { + def errorMsg = "Найдены тикеты с категорией базы знаний: " + + categorizedTickets.join(", ") + AssertionResult.setFailure(true) + AssertionResult.setFailureMessage(errorMsg) + } + } else { + log.info("Проверка категории базы знаний ID ${expectedValue}") + } +} + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/${random_ticket_id_from_page}/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + has_assigned_to + th[class="table-active"] + td + + + false + 3 + + + + + + ${__groovy(vars.get("has_assigned_to") == "Unassigned",)} + false + true + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /tickets/${random_ticket_id_from_page}/ + true + GET + true + false + + + + false + take + + + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/43/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/ + true + GET + true + false + + + + false + sortx + created + = + true + + + false + date_from + + = + true + + + false + date_to + + = + true + + + false + q + + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*=)\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=created&date_from=&date_to=&q= + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + records_total + $.recordsTotal + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 2 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + ${start_from} + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + true + + + def recordsTotal = vars.get("records_total") +int limitOfTicketsOnPage = 25 +int countOfPages = recordsTotal.toInteger()/limitOfTicketsOnPage +int randomNumber = new Random().nextInt(countOfPages) +int startFrom = randomNumber * limitOfTicketsOnPage +log.info(String.valueOf(startFrom)) +vars.put("start_from", String.valueOf(startFrom)) + groovy + + + + random_ticket_id_from_page + $.data[*].id + 0 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/${random_ticket_id_from_page}/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=created&date_from=&date_to=&q= + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + new_status + label[class="radio-inline"]>input + value + + false + 0 + + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/${random_ticket_id_from_page}/update/ + true + POST + true + true + true + false + + + + false + comment + ${__RandomString(8,qazwsxedcrfvtgbyhn,)} + = + true + + + false + new_status + ${new_status} + = + true + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/60/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + + + filter_by_assiged_to + assigned_to + = + + + assigned_to_unassigned + -1 + = + + + assigned_to_admin + 1 + = + + + filter_by_queue + queue + = + + + queue_django_helpdesk + 1 + = + + + queue_some_product + 2 + = + + + queue_random + ${__Random(1,2,)} + = + + + filter_by_status + status + = + + + status_open + 1 + = + + + status_reopened + 2 + = + + + status_resolved + 3 + = + + + status_closed + 4 + = + + + status_duplicated + 5 + = + + + status_random + ${__Random(1,5,)} + = + + + filter_by_date_from + date_from + = + + + start_from_random + ${__RandomDate(,,2026-06-30,,)} + = + + + filter_by_date_to + date_to + = + + + filter_by_date_to + ${__RandomDate(,2026-07-01,2026-12-31,,)} + = + + + filter_by_keyword + q + = + + + keyword_random + ${__RandomString(6,qazwsxedcrfv,)} + = + + + filter_by_knowledgeIbase_item + kbitem + = + + + kbitem_uncategorized + -1 + = + + + kbitem_kb_cat1_django_helpdesk + 1 + = + + + kbitem_kb_cat1_contributing_to_django_helpdesk + 2 + = + + + kbitem_kb_cat2_something_else + 3 + = + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /tickets/ + true + GET + true + false + + + + false + sortx + created + = + true + + + false + status + 5 + = + true + + + false + + = + true + ${filter_by_date_from} + + + false + + = + true + ${filter_by_date_to} + + + false + + = + true + ${filter_by_keyword} + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*=?)\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + records_total + $.recordsTotal + 1 + + + + random_ticket_id_from_page + $.data[*].id + 0 + + + + + ${__groovy(vars.get("records_total") as Integer != 0)} + false + true + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/update/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + ticketTable_length + 25 + = + true + + + false + ticket_id + ${random_ticket_id_from_page} + = + true + + + false + action + delete + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=created&status=5&date_from=&date_to=&q= + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*=?)\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + + + true + columns[0][data] + id + = + + + true + columns[0][name] + + = + + + true + columns[0][searchable] + true + = + + + true + columns[0][orderable] + false + = + + + true + columns[0][search][value] + + = + + + true + columns[0][search][regex] + false + = + + + true + columns[1][data] + ticket + = + + + true + columns[1][name] + + = + + + true + columns[1][searchable] + true + = + + + true + columns[1][orderable] + true + = + + + true + columns[1][search][value] + + = + + + true + columns[1][search][regex] + false + = + + + true + columns[2][data] + priority + = + + + true + columns[2][name] + + = + + + true + columns[2][searchable] + true + = + + + true + columns[2][orderable] + true + = + + + true + columns[2][search][value] + + = + + + true + columns[2][search][regex] + false + = + + + true + columns[3][data] + queue + = + + + true + columns[3][name] + + = + + + true + columns[3][searchable] + true + = + + + true + columns[3][orderable] + true + = + + + true + columns[3][search][value] + + = + + + true + columns[3][search][regex] + false + = + + + true + columns[4][data] + status + = + + + true + columns[4][name] + + = + + + true + columns[4][searchable] + true + = + + + true + columns[4][orderable] + true + = + + + true + columns[4][search][value] + + = + + + true + columns[4][search][regex] + false + = + + + true + columns[5][data] + created + = + + + true + columns[5][name] + + = + + + true + columns[5][searchable] + true + = + + + true + columns[5][orderable] + true + = + + + true + columns[5][search][value] + + = + + + true + columns[5][search][regex] + false + = + + + true + columns[6][data] + due_date + = + + + true + columns[6][name] + + = + + + true + columns[6][searchable] + true + = + + + true + columns[6][orderable] + true + = + + + true + columns[6][search][value] + + = + + + true + columns[6][search][regex] + false + = + + + true + columns[7][data] + assigned_to + = + + + true + columns[7][name] + + = + + + true + columns[7][searchable] + true + = + + + true + columns[7][orderable] + true + = + + + true + columns[7][search][value] + + = + + + true + columns[7][search][regex] + false + = + + + true + columns[8][data] + submitter + = + + + true + columns[8][name] + + = + + + true + columns[8][searchable] + true + = + + + true + columns[8][orderable] + true + = + + + true + columns[8][search][value] + + = + + + true + columns[8][search][regex] + false + = + + + true + columns[9][data] + time_spent + = + + + true + columns[9][name] + + = + + + true + columns[9][searchable] + true + = + + + true + columns[9][orderable] + true + = + + + true + columns[9][search][value] + + = + + + true + columns[9][search][regex] + false + = + + + true + columns[10][data] + kbitem + = + + + true + columns[10][name] + + = + + + true + columns[10][searchable] + true + = + + + true + columns[10][orderable] + true + = + + + true + columns[10][search][value] + + = + + + true + columns[10][search][regex] + false + = + + + true + order[0][column] + 0 + = + + + true + order[0][dir] + asc + = + + + false + start + 0 + = + + + false + length + 25 + = + + + true + search[value] + + = + + + true + search[regex] + false + = + + + false + _ + ${__time(,)} + = + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + + + + + + + + true + + 5000 + + postgresql + jdbc:postgresql://sandbox:23233/postgres + org.postgresql.Driver + + true + postgresdev + 1 + false + 10000 + DEFAULT + 60000 + postgres + + + + postgresql + DO $$ +DECLARE + ticket_id_to_delete INTEGER; +BEGIN + -- Получаем и блокируем ID тикета + SELECT id INTO ticket_id_to_delete + FROM helpdesk_ticket + WHERE status = 5 + ORDER BY RANDOM() + LIMIT 1; + + IF ticket_id_to_delete IS NOT NULL THEN + DELETE FROM helpdesk_ticketchange + WHERE followup_id IN ( + SELECT id FROM helpdesk_followup + WHERE ticket_id = ticket_id_to_delete + ); + + DELETE FROM helpdesk_followup + WHERE ticket_id = ticket_id_to_delete; + + DELETE FROM helpdesk_ticket + WHERE id = ticket_id_to_delete; + + END IF; +END $$; + + + + Prepared Update Statement + Store as String + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /tickets/ + true + GET + true + false + + + + false + sortx + created + = + true + + + false + + = + true + ${filter_by_date_from} + + + false + + = + true + ${filter_by_date_to} + + + false + + = + true + ${filter_by_keyword} + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + false + CSRF + \bname=\"csrfmiddlewaretoken\"\svalue=\"(\w{32,64})\" + $1$ + CSRF ERROR + false + 1 + + + + false + QUERY_TOKEN + \bname=\'query_encoded\'\svalue='(\w*=)\'/> + $1$ + QUERY_TOKEN_NOT_FOUND + false + 1 + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 3 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + true + + + import groovy.json.JsonSlurper +def jsonSlurper = new JsonSlurper() +def jsonResponse = jsonSlurper.parseText(prev.getResponseDataAsString()) +def minPriority = jsonResponse.data.collect { it.priority }.min() +def minItems = jsonResponse.data.findAll { it.priority == minPriority } +log.info("Найдено элементов с минимальным priority (${minPriority}): ${minItems.size()}") +if (minItems && minItems.size() > 0) { + def randomIndex = new Random().nextInt(minItems.size()) + def randomItem = minItems[randomIndex].id + vars.put("random_minimum_status", String.valueOf(randomItem)) +} + + groovy + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /tickets/update/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + ticketTable_length + 25 + = + true + + + false + ticket_id + ${random_minimum_status} + = + true + + + false + action + close + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=created&status=5&date_from=&date_to=&q= + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=0 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${QUERY_TOKEN} + true + GET + true + false + + + + false + draw + 1 + = + true + + + true + columns[0][data] + id + = + true + + + true + columns[0][name] + + = + true + + + true + columns[0][searchable] + true + = + true + + + true + columns[0][orderable] + false + = + true + + + true + columns[0][search][value] + + = + true + + + true + columns[0][search][regex] + false + = + true + + + true + columns[1][data] + ticket + = + true + + + true + columns[1][name] + + = + true + + + true + columns[1][searchable] + true + = + true + + + true + columns[1][orderable] + true + = + true + + + true + columns[1][search][value] + + = + true + + + true + columns[1][search][regex] + false + = + true + + + true + columns[2][data] + priority + = + true + + + true + columns[2][name] + + = + true + + + true + columns[2][searchable] + true + = + true + + + true + columns[2][orderable] + true + = + true + + + true + columns[2][search][value] + + = + true + + + true + columns[2][search][regex] + false + = + true + + + true + columns[3][data] + queue + = + true + + + true + columns[3][name] + + = + true + + + true + columns[3][searchable] + true + = + true + + + true + columns[3][orderable] + true + = + true + + + true + columns[3][search][value] + + = + true + + + true + columns[3][search][regex] + false + = + true + + + true + columns[4][data] + status + = + true + + + true + columns[4][name] + + = + true + + + true + columns[4][searchable] + true + = + true + + + true + columns[4][orderable] + true + = + true + + + true + columns[4][search][value] + + = + true + + + true + columns[4][search][regex] + false + = + true + + + true + columns[5][data] + created + = + true + + + true + columns[5][name] + + = + true + + + true + columns[5][searchable] + true + = + true + + + true + columns[5][orderable] + true + = + true + + + true + columns[5][search][value] + + = + true + + + true + columns[5][search][regex] + false + = + true + + + true + columns[6][data] + due_date + = + true + + + true + columns[6][name] + + = + true + + + true + columns[6][searchable] + true + = + true + + + true + columns[6][orderable] + true + = + true + + + true + columns[6][search][value] + + = + true + + + true + columns[6][search][regex] + false + = + true + + + true + columns[7][data] + assigned_to + = + true + + + true + columns[7][name] + + = + true + + + true + columns[7][searchable] + true + = + true + + + true + columns[7][orderable] + true + = + true + + + true + columns[7][search][value] + + = + true + + + true + columns[7][search][regex] + false + = + true + + + true + columns[8][data] + submitter + = + true + + + true + columns[8][name] + + = + true + + + true + columns[8][searchable] + true + = + true + + + true + columns[8][orderable] + true + = + true + + + true + columns[8][search][value] + + = + true + + + true + columns[8][search][regex] + false + = + true + + + true + columns[9][data] + time_spent + = + true + + + true + columns[9][name] + + = + true + + + true + columns[9][searchable] + true + = + true + + + true + columns[9][orderable] + true + = + true + + + true + columns[9][search][value] + + = + true + + + true + columns[9][search][regex] + false + = + true + + + true + columns[10][data] + kbitem + = + true + + + true + columns[10][name] + + = + true + + + true + columns[10][searchable] + true + = + true + + + true + columns[10][orderable] + true + = + true + + + true + columns[10][search][value] + + = + true + + + true + columns[10][search][regex] + false + = + true + + + true + order[0][column] + 0 + = + true + + + true + order[0][dir] + asc + = + true + + + false + start + 0 + = + true + + + false + length + 25 + = + true + + + true + search[value] + + = + true + + + true + search[regex] + false + = + true + + + false + _ + ${__time(,)} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + application/json, text/javascript, */*; q=0.01 + + + + + + random_ticket_id_from_page + $.data[*].id + 0 + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + + Test Plan + Test Plan + TF_Timer + + + + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /logout/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/ + + + Accept-Language + ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7 + + + Upgrade-Insecure-Requests + 1 + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 + + + + + + + + + + + + false + + + + + Test Plan + Test Plan + TF_UC01_UserLogin + + + + + ${__jexl3(${__Random(0,1,)} == 1)} + false + true + + + + + Test Plan + Test Plan + TF_UC04_Pagination + + + + + + + Test Plan + Test Plan + TF_UC03_TicketCreation + + + + + + Test Plan + Test Plan + TF_UC08_DeleteTicket + + + + + + Test Plan + Test Plan + TF_UC10_Logout + + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + 9000 + + Pagination + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff|woff2) + + + true + 0 + false + + false + true + true + true + false + 0 + + + + false + false + + + + + + + + + influxdbMetricsSender + org.apache.jmeter.visualizers.backend.influxdb.HttpMetricsSender + = + + + influxdbUrl + http://localhost:8086/write?db=test + = + + + application + application name + = + + + measurement + nikitadr + = + + + summaryOnly + true + = + + + samplersRegex + .* + = + + + percentiles + 90;95;99 + = + + + testTitle + Test name + = + + + eventTags + + = + + + + org.apache.jmeter.visualizers.backend.influxdb.InfluxdbBackendListenerClient + + + + +