From 0835312cf9b650106dd36783139372e4da507d28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A8=D0=B8=D0=BC=D1=87=D0=B5=D0=BD=D0=BA=D0=BE?= Date: Fri, 15 Aug 2025 23:01:53 +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 --- mathmodenjoyer.jmx | 3273 ++++++++++++++++++++++++++------------------ 1 file changed, 1974 insertions(+), 1299 deletions(-) diff --git a/mathmodenjoyer.jmx b/mathmodenjoyer.jmx index d22f8a8..b61b95d 100644 --- a/mathmodenjoyer.jmx +++ b/mathmodenjoyer.jmx @@ -31,6 +31,8 @@ + false + false @@ -41,7 +43,7 @@ false - + login_admin @@ -53,46 +55,6 @@ admindev = - - public - public - = - - - time_spent - - = - - - owner - 0 - = - - - due_date - - = - - - attachment - - = - - - filter_sortx - title - = - - - filter_sortreverse - on - = - - - filter_assigned_to - 2 - = - filter_kbitem 1 @@ -115,7 +77,60 @@ - + + + + + influxdbMetricsSender + org.apache.jmeter.visualizers.backend.influxdb.HttpMetricsSender + = + + + influxdbUrl + http://localhost:8086/write?db=test + = + + + application + application name + = + + + measurement + mathmodenjoyer + = + + + summaryOnly + false + = + + + samplersRegex + ^[^.].* + = + + + percentiles + 90;95;99 + = + + + testTitle + Test name + = + + + eventTags + + = + + + + org.apache.jmeter.visualizers.backend.influxdb.InfluxdbBackendListenerClient + + + 1 1 true @@ -126,7 +141,7 @@ - + Test Plan Test Plan @@ -134,7 +149,7 @@ - + Test Plan Test Plan @@ -142,7 +157,7 @@ - + Test Plan Test Plan @@ -150,7 +165,7 @@ - + Test Plan Test Plan @@ -158,7 +173,7 @@ - + Test Plan Test Plan @@ -166,7 +181,7 @@ - + Test Plan Test Plan @@ -174,7 +189,7 @@ - + Test Plan Test Plan @@ -182,7 +197,7 @@ - + Test Plan Test Plan @@ -190,7 +205,7 @@ - + Test Plan Test Plan @@ -198,7 +213,7 @@ - + Test Plan Test Plan @@ -206,7 +221,7 @@ - + Test Plan Test Plan @@ -1071,7 +1086,7 @@ - + Test Plan Test Plan @@ -1088,64 +1103,181 @@ - - 1 - 0 - 0 - false - - source_selector - - - - ${__jexl3(${source_selector} == 1)} + + ${__groovy(props.get("global_user_auth") == null,)} false true - - sandbox - 8086 - http - /query + + 1 + 0 + 0 + false + + source_selector + + + + ${__jexl3(${source_selector} == 1)} + false + true + + + + sandbox + 8086 + http + /query + true + GET + true + false + + + + false + test + = + true + db + + + true + select * from users_data limit 1 + = + true + q + + + + + + + false + login_user + "values":\[\[.*?,"(.*?)"," + $1$ + CRSF ERROR + false + 1 + + + + false + password_user + "values":\[\[.*?",".*?","(.*?)"\]\] + $1$ + CRSF ERROR + false + 1 + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + / + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/ + + + Accept-Language + ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 + + + 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 - - false - test - = - true - db - - + true - select * from users_data limit 1 + next + / = true - q - - false - login_user - "values":\[\[.*?,"(.*?)"," - $1$ - CRSF ERROR - false - 1 - + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/ + + + Accept-Language + ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 + + + 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 - password_user - "values":\[\[.*?",".*?","(.*?)"\]\] + CSRF + name="csrfmiddlewaretoken" value="(.*)" $1$ CRSF ERROR false @@ -1153,943 +1285,845 @@ - - - ${HOSTNAME} - ${PORT} - ${PROTOCOL} - / - true - GET - true - false - - - - - - - - - Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/ - - - Accept-Language - ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 - - - 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 - - - - - - - - - Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/ - - - Accept-Language - ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 - - - 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 - name="csrfmiddlewaretoken" value="(.*)" - $1$ - CRSF ERROR - false - 1 - - - - - Detected the start of a redirect chain - ${HOSTNAME} - ${PORT} - ${PROTOCOL} - utf-8 - /login/ - true - POST - true - - - - text/csv - C:\Users\king_\Desktop\users.csv - - - - - false - - - - false - username - ${login_user} - = - true - - - false - password - ${password_user} - = - true - - - true - next - / - = - true - - - false - csrfmiddlewaretoken - ${CSRF} - = - true - - - - - - - - - Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/login/?next=/ - - - Accept-Language - ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 - - - - - - - Please try - - - Assertion.response_data - false - 6 - - - - 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 - - - - - - - false - query_encoded - /datatables_ticket_list/([^"]+) - $1$ - query_encoded ERROR - false - 1 - - - - groovy - - - true - def queryEncoded = vars.get("query_encoded"); + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /login/ + true + POST + true + + + + text/csv + C:\Users\king_\Desktop\users.csv + + + + + false + + + + false + username + ${login_user} + = + true + + + false + password + ${password_user} + = + true + + + true + next + / + = + true + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/login/?next=/ + + + Accept-Language + ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 + + + + + + + Please try + + + Assertion.response_data + false + 6 + + + + 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 + + + + + + + false + query_encoded + /datatables_ticket_list/([^"]+) + $1$ + query_encoded ERROR + false + 1 + + + + groovy + + + true + def queryEncoded = vars.get("query_encoded"); props.put("global_query_encoded", queryEncoded); - - - - - ${HOSTNAME} - ${PORT} - ${PROTOCOL} - /datatables_ticket_list/${query_encoded} - 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}/login/?next=/ - - - Accept-Language - ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 - - - 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 - - - - - - random_ticket - $.data[*] - 0 - random_ticket ERROR - - - - as_document - assigned - "assigned_to":\s*"([^"]+)" - $1$ - id ERROR - false - 1 - variable - random_ticket - - - - as_document - id - "id":(\d+) - $1$ - id ERROR - false - 1 - variable - random_ticket - - - - groovy - - - true - def assigned = vars.get("assigned"); + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${query_encoded} + 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}/login/?next=/ + + + Accept-Language + ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 + + + 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 + + + + + + random_ticket + $.data[*] + 0 + random_ticket ERROR + + + + as_document + assigned + "assigned_to":\s*"([^"]+)" + $1$ + id ERROR + false + 1 + variable + random_ticket + + + + as_document + id + "id":(\d+) + $1$ + id ERROR + false + 1 + variable + random_ticket + + + + false + records_total + "recordsTotal":\s*(\d+) + $1$ + records_total ERROR + false + 1 + + + + groovy + + + true + def assigned = vars.get("assigned"); props.put("global_assigned", assigned); def id = vars.get("id"); props.put("global_id", id); +def records = vars.get("records_total"); +props.put("global_records_total", records); - - - - - Log In - - - Assertion.response_data - false - 6 - - - - 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 - - - - - + + + + + Log In + + + Assertion.response_data + false + 6 + + + + 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 + + + + + + - + Test Plan Test Plan @@ -2691,7 +2725,7 @@ vars.put("password_user", password) true - + ${HOSTNAME_INFLUX} ${PORT_INFLUX} ${PROTOCOL} @@ -2735,7 +2769,7 @@ try { - + Test Plan Test Plan @@ -2744,7 +2778,7 @@ try { - + false @@ -3189,7 +3223,7 @@ vars.put("password_user", password) true - + ${HOSTNAME_INFLUX} ${PORT_INFLUX} ${PROTOCOL} @@ -3233,7 +3267,7 @@ try { - + Test Plan Test Plan @@ -3242,7 +3276,7 @@ try { - + false @@ -3258,7 +3292,7 @@ try { - + ${HOSTNAME} ${PORT} ${PROTOCOL} @@ -3323,7 +3357,7 @@ try { - + Detected the start of a redirect chain ${HOSTNAME} ${PORT} @@ -3447,7 +3481,7 @@ try { - + Test Plan Test Plan @@ -4623,7 +4657,7 @@ vars.put("random_page", randomPage.toString()) - + Test Plan Test Plan @@ -4632,15 +4666,15 @@ vars.put("random_page", randomPage.toString()) - + - + false - + - + Test Plan Test Plan @@ -4648,7 +4682,7 @@ vars.put("random_page", randomPage.toString()) - + ${HOSTNAME} ${PORT} ${PROTOCOL} @@ -4663,7 +4697,7 @@ vars.put("random_page", randomPage.toString()) false assigned_to - 2 + ${assigned_to} = true @@ -4705,7 +4739,7 @@ vars.put("random_page", randomPage.toString()) false kbitem - ${__Random(1,4,)} + ${kbitem} = true @@ -4713,7 +4747,38 @@ vars.put("random_page", randomPage.toString()) - + + groovy + + + true + import java.util.Random +import org.apache.commons.io.FileUtils + +def csvFile = new File("users.csv") + +def lines = FileUtils.readLines(csvFile, "UTF-8") + +Random rand = new Random() + +int randomValue = rand.nextInt(lines.size() + 2) +if (randomValue == 0) randomValue = -1 + +vars.put("assigned_to", randomValue.toString()) + + + + + groovy + + + true + def values = [-1, 1, 2, 3] +def randomValue = values[new Random().nextInt(values.size())] +vars.put("kbitem", randomValue.toString()) + + + Referer @@ -4742,7 +4807,7 @@ vars.put("random_page", randomPage.toString()) - + false query_encoded_filtered <input type='hidden' name='query_encoded' value='([^']+)'/> @@ -4752,7 +4817,7 @@ vars.put("random_page", randomPage.toString()) 1 - + false CSRF name="csrfmiddlewaretoken" value="(.*)" @@ -4763,150 +4828,7 @@ vars.put("random_page", randomPage.toString()) - - Detected the start of a redirect chain - ${HOSTNAME} - ${PORT} - ${PROTOCOL} - /save_query/ - true - POST - true - false - - - - false - csrfmiddlewaretoken - ${CSRF} - = - true - - - false - query_encoded - ${query_encoded_filtered} - = - true - - - false - title - aboba - = - true - - - false - shared - on - = - true - - - - - - - - - Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=title&sortreverse=on&assigned_to=2&queue=2&status=3&date_from=2${owner}18-${owner}1-3${owner}&date_to=2${owner}25-${owner}1-3${owner}&q=qua&kbitem=1 - - - Accept-Language - ru,en;q=${owner}.9,en-GB;q=${owner}.8,en-US;q=${owner}.7 - - - Origin - ${PROTOCOL}://${HOSTNAME}:${PORT} - - - Accept - text/html,application/xhtml+xml,application/xml;q=${owner}.9,image/avif,image/webp,image/apng,*/*;q=${owner}.8,application/signed-exchange;v=b3;q=${owner}.7 - - - Upgrade-Insecure-Requests - 1 - - - Content-Type - application/x-www-form-urlencoded - - - Cache-Control - max-age=${owner} - - - Accept-Encoding - gzip, deflate - - - User-Agent - Mozilla/5.${owner} (Windows NT 1${owner}.${owner}; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.${owner}.${owner}.${owner} Safari/537.36 Edg/138.${owner}.${owner}.${owner} - - - - - - - ${HOSTNAME} - ${PORT} - ${PROTOCOL} - utf-8 - /tickets/ - true - GET - true - false - - - - false - saved_query - 7 - = - true - - - - - - - - - Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=title&sortreverse=on&assigned_to=2&queue=2&status=3&date_from=2${owner}18-${owner}1-3${owner}&date_to=2${owner}25-${owner}1-3${owner}&q=qua&kbitem=1 - - - Accept-Language - ru,en;q=${owner}.9,en-GB;q=${owner}.8,en-US;q=${owner}.7 - - - Upgrade-Insecure-Requests - 1 - - - Cache-Control - max-age=${owner} - - - Accept-Encoding - gzip, deflate - - - User-Agent - Mozilla/5.${owner} (Windows NT 1${owner}.${owner}; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.${owner}.${owner}.${owner} Safari/537.36 Edg/138.${owner}.${owner}.${owner} - - - Accept - text/html,application/xhtml+xml,application/xml;q=${owner}.9,image/avif,image/webp,image/apng,*/*;q=${owner}.8,application/signed-exchange;v=b3;q=${owner}.7 - - - - - - + ${HOSTNAME} ${PORT} ${PROTOCOL} @@ -5443,11 +5365,11 @@ vars.put("random_page", randomPage.toString()) Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?saved_query=7 + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=created&status=4&date_from=&date_to=&q= Accept-Language - ru,en;q=${owner}.9,en-GB;q=${owner}.8,en-US;q=${owner}.7 + ru,en;q=0.9,en-GB;q=0.8,en-US;q=0.7 X-Requested-With @@ -5459,19 +5381,743 @@ vars.put("random_page", randomPage.toString()) User-Agent - Mozilla/5.${owner} (Windows NT 1${owner}.${owner}; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.${owner}.${owner}.${owner} Safari/537.36 Edg/138.${owner}.${owner}.${owner} + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0 Accept - application/json, text/javascript, */*; q=${owner}.${owner}1 + application/json, text/javascript, */*; q=0.01 + + 9 + 0 + 0 + false + + save_selector + + + + ${__jexl3(${save_selector} == 9)} + false + true + + + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /save_query/ + true + POST + true + false + + + + false + csrfmiddlewaretoken + ${CSRF} + = + true + + + false + query_encoded + ${query_encoded_filtered} + = + true + + + false + title + ${__RandomString(5,abcdefghijklmnop)} + = + true + + + false + shared + on + = + true + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/?sortx=title&sortreverse=on&assigned_to=2&queue=2&status=3&date_from=2${owner}18-${owner}1-3${owner}&date_to=2${owner}25-${owner}1-3${owner}&q=qua&kbitem=1 + + + Accept-Language + ru,en;q=${owner}.9,en-GB;q=${owner}.8,en-US;q=${owner}.7 + + + Origin + ${PROTOCOL}://${HOSTNAME}:${PORT} + + + Accept + text/html,application/xhtml+xml,application/xml;q=${owner}.9,image/avif,image/webp,image/apng,*/*;q=${owner}.8,application/signed-exchange;v=b3;q=${owner}.7 + + + Upgrade-Insecure-Requests + 1 + + + Content-Type + application/x-www-form-urlencoded + + + Cache-Control + max-age=${owner} + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.${owner} (Windows NT 1${owner}.${owner}; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.${owner}.${owner}.${owner} Safari/537.36 Edg/138.${owner}.${owner}.${owner} + + + + + + + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + /datatables_ticket_list/${query_encoded_filtered} + 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/?saved_query=7 + + + Accept-Language + ru,en;q=${owner}.9,en-GB;q=${owner}.8,en-US;q=${owner}.7 + + + X-Requested-With + XMLHttpRequest + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.${owner} (Windows NT 1${owner}.${owner}; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.${owner}.${owner}.${owner} Safari/537.36 Edg/138.${owner}.${owner}.${owner} + + + Accept + application/json, text/javascript, */*; q=${owner}.${owner}1 + + + + + + false + record_total_filtered + "recordsTotal":\s*(\d+) + $1$ + record_total_filtered ERROR + false + 1 + + + + + ${records_total_filtered} + + + Assertion.response_data + false + 12 + variable + ${__P(global_records_total)} + + + + 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 + + + + + + + - + Test Plan Test Plan @@ -5496,8 +6142,54 @@ vars.put("random_page", randomPage.toString()) + + Detected the start of a redirect chain + ${HOSTNAME} + ${PORT} + ${PROTOCOL} + utf-8 + /tickets/${__P(global_id)}/ + true + GET + true + false + + + + + + + + + Referer + ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/4/ + + + Accept-Language + ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 + + + 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 + + + + + - ${__jexl3(!("${__P(global_assigned)}".equals("None")),)} + ${__jexl3(("${__P(global_assigned)}".equals("None")),)} false true @@ -5556,55 +6248,9 @@ vars.put("random_page", randomPage.toString()) - - Detected the start of a redirect chain - ${HOSTNAME} - ${PORT} - ${PROTOCOL} - utf-8 - /tickets/${__P(global_id)}/ - true - GET - true - false - - - - - - - - - Referer - ${PROTOCOL}://${HOSTNAME}:${PORT}/tickets/4/ - - - Accept-Language - ru,en;q=0.9,en-GB;q=0.8,en-US;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/138.0.0.0 Safari/537.36 Edg/138.0.0.0 - - - 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 - - - - - - + Test Plan Test Plan @@ -5695,7 +6341,7 @@ vars.put("random_page", randomPage.toString()) - + false query_encoded_no_filter <input type='hidden' name='query_encoded' value='([^']+)'/> @@ -5932,150 +6578,175 @@ vars.put("random_page", randomPage.toString()) 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 @@ -6254,7 +6925,7 @@ vars.put("random_page", randomPage.toString()) - + ${HOSTNAME} ${PORT} ${PROTOCOL} @@ -6916,6 +7587,16 @@ vars.put("random_page", randomPage.toString()) + + false + CSRF + name="csrfmiddlewaretoken" value="(.*)" + $1$ + CSRF ERROR + false + 1 + + false status @@ -6958,14 +7639,14 @@ vars.put("random_page", randomPage.toString()) false public - ${public} + 1 = true false time_spent - ${time_spent} + = true @@ -6979,7 +7660,7 @@ vars.put("random_page", randomPage.toString()) false owner - ${owner} + 0 = true @@ -6993,14 +7674,14 @@ vars.put("random_page", randomPage.toString()) false due_date - ${due_date} + = true false attachment - ${attachment} + = application/octet-stream true @@ -7056,7 +7737,7 @@ vars.put("random_page", randomPage.toString()) - + Test Plan Test Plan @@ -7171,6 +7852,16 @@ vars.put("random_page", randomPage.toString()) 1 + + false + CSRF + name="csrfmiddlewaretoken" value="(.*)" + $1$ + CRSF ERROR + false + 1 + + ${HOSTNAME} @@ -7761,59 +8452,9 @@ catch (Exception e) } - - true - - - def status = vars.get("post_processor_status") -if (status == "failed") { - AssertionResult.setFailure(true) -} - groovy - - - - 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 - - - - - - ${__jexl3( - ${JMeterThread.last_sample_ok} -)} + ${__jexl2("${post_processor_status}" == "success")} false true @@ -8470,7 +9111,7 @@ if (status == "failed") { - + Test Plan Test Plan @@ -8534,7 +9175,7 @@ if (status == "failed") { - + Test Plan Test Plan @@ -8559,6 +9200,15 @@ if (status == "failed") { + + groovy + + + true + props.put("global_user_auth", "done"); + + + 1 0 @@ -8607,9 +9257,17 @@ if (status == "failed") { + + groovy + + + true + props.remove("global_user_auth"); + + - + Test Plan Test Plan @@ -8618,7 +9276,7 @@ if (status == "failed") { - + false @@ -8638,6 +9296,15 @@ if (status == "failed") { + + groovy + + + true + props.put("global_user_auth", "done"); + + + 3 @@ -8691,10 +9358,18 @@ if (status == "failed") { + + groovy + + + true + props.remove("global_user_auth"); + + - + Test Plan Test Plan @@ -8705,7 +9380,7 @@ if (status == "failed") { - + 8881