diff --git a/integration/load_001_create_users.jmx b/integration/load_001_create_users.jmx new file mode 100644 index 00000000..f0b50b3d --- /dev/null +++ b/integration/load_001_create_users.jmx @@ -0,0 +1,589 @@ + + + + + false + false + + + + + + + + + + + host + ${__property(host,,127.0.0.1)} + = + + + scheme + ${__property(scheme,,http)} + = + + + port + ${__property(port,,5000)} + = + + + thinkTime + 3000 + = + + + defaultPaymentCount + 3 + = + + + configPath + ${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)} + = + + + userCount + 100 + = + + + + + + + + + ${host} + ${port} + ${scheme} + + + 6 + Java + 20000 + 30000 + + + + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + + false + false + + + + false + true + + + + fragments/init-server.jmx + + + + + + continue + + false + 1 + + 50 + 50 + 1370726934000 + 1370726934000 + false + + + false + + + + + false + false + + + + false + true + + + + true + + + + false + {"username":"admin","password":"secret1234"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + groovy + + + true + ${__Random(0,100000000000, randomUserNamespace)} + To avoid collision between tests + + + + + true + ${userCount} + + + + 1 + ${userCount} + 1 + userIndex + + true + + + + true + + + + false + { + "extra": { + "first_name": "First Name${randomUserNamespace}", + "last_name": "Last Name${randomUserNamespace}" + }, + "username": "u_${randomUserNamespace}_${userIndex}" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /users/api/v1/user + POST + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + username + u_${randomUserNamespace}_${userIndex} + true + false + false + true + + + + + + false + true + false + + + + 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 + + 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 + + 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 + + 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 + + + + 100 + true + (wallet){1} + + + + 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 + + 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 + + + + + + + + 8888 + + windowsupdate\.microsoft\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2) + .*msg\.yahoo\.com.* + www\.download\.windowsupdate\.com.* + toolbarqueries\.google\..* + http?://self-repair\.mozilla\.org.* + tiles.*\.mozilla\.com.* + .*detectportal\.firefox\.com.* + us\.update\.toolbar\.yahoo\.com.* + .*\.google\.com.*/safebrowsing/.* + api\.bing\.com.* + toolbar\.google\.com.* + .*yimg\.com.* + toolbar\.msn\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2)[\?;].* + toolbar\.avg\.com/.* + www\.google-analytics\.com.* + pgq\.yahoo\.com.* + safebrowsing.*\.google\.com.* + sqm\.microsoft\.com.* + g\.msn.* + clients.*\.google.* + .*toolbar\.yahoo\.com.* + geo\.yahoo\.com.* + + + true + 4 + false + + false + true + true + false + true + + + false + + 0 + + true + UTF-8 + + + + 8081 + 0 + 25 + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + + diff --git a/integration/load_002_create_payments.jmx b/integration/load_002_create_payments.jmx new file mode 100644 index 00000000..4cd3f49c --- /dev/null +++ b/integration/load_002_create_payments.jmx @@ -0,0 +1,1100 @@ + + + + + false + false + + + + + + + + + + + host + ${__property(host,,127.0.0.1)} + = + + + scheme + ${__property(scheme,,http)} + = + + + port + ${__property(port,,5000)} + = + + + thinkTime + 3000 + = + + + defaultPaymentCount + 3 + = + + + configPath + ${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)} + = + + + paymentCount + 1000 + = + + + userAdminKey + 070e45be347f47d5becb6b1a1f937709 + = + + + + + + + + + ${host} + ${port} + ${scheme} + + + 6 + Java + 20000 + 30000 + + + + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + + false + false + + + + false + true + + + + fragments/init-server.jmx + + + + + false + true + + + + groovy + + + true + ${__Random(0,1000000000, randomUserNamespace)} + To avoid collision between tests + + + + true + + + + false + { + "username": "user_${randomUserNamespace}", + "password": "secret1234", + "password_repeat": "secret1234", + "email": "u_${randomUserNamespace}@lnbits.com" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth/register + POST + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + username + user_${randomUserNamespace} + true + false + false + true + + + + userWalletId + + + no-user-wallet-id + + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth + GET + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + username + user_${randomUserNamespace} + true + false + false + true + + + + userWalletId + wallets[0].id + + no-user-wallet-id + + + + + javascript + + + true + var userWalletId = vars.get("userWalletId") + +props.put("userWalletId", userWalletId) + + + + + javascript + + + true + var adminWalletKey = vars.get("adminWalletKey") + +props.put("adminWalletKey", adminWalletKey) + + + + false + true + false + + + + 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 + + + + + + + + continue + + false + 1 + + 100 + 100 + 1370726934000 + 1370726934000 + false + + + false + + + + + false + false + + + + false + true + + + + groovy + + + true + ${__Random(0,1000000000, randomUserNamespace)} + To avoid collision between tests + + + + fragments/init-server.jmx + + + + + true + + + + false + {"username":"admin","password":"secret1234"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + true + ${paymentCount} + + + + 1 + ${paymentCount} + 1 + paymentIndex + + true + + + + false + true + + + + 1000 + 10 + + true + + amount + + + + true + + + + false + { + "out": false, + "amount": ${amount}, + "memo": "${randomUserNamespace}", + "unit": "sat", + "lnurl_withdraw": null, + "fiat_provider": "", + "payment_hash": null +} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/payments + POST + true + false + true + false + + + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0 + + + Sec-Fetch-Dest + empty + + + x-api-key + ${userAdminKey} + + + + + + + 201 + + + Assertion.response_code + false + 8 + + + + bolt11 + + false + false + false + true + + + + payment_hash + + false + false + false + true + + + + paymentRequest + bolt11 + 0 + no-payment-request + + + + paymentHash + payment_hash + 0 + no-payment-hash + + + + + + false + true + + + + true + + + + false + { + "out": true, + "amount": ${amount}, + "memo": "paying ${randomUserNamespace}", + "unit": "sat", + "bolt11": "${paymentRequest}" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/payments + POST + true + false + true + false + + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + X-Api-Key + ${adminWalletKey} + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 201 + + + Assertion.response_code + false + 8 + + + + payment_hash + ${paymentHash} + true + false + false + false + + + + + + false + true + + + + true + + + + false + {"amount":"1000","id":"eb0825f0409b48cb994d2e3bb67502c5"} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /users/api/v1/balance + PUT + true + false + true + false + + HttpClient4 + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + X-Api-Key + ${adminWalletKey} + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + + false + true + false + + + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + + + + + + 8888 + + windowsupdate\.microsoft\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2) + .*msg\.yahoo\.com.* + www\.download\.windowsupdate\.com.* + toolbarqueries\.google\..* + http?://self-repair\.mozilla\.org.* + tiles.*\.mozilla\.com.* + .*detectportal\.firefox\.com.* + us\.update\.toolbar\.yahoo\.com.* + .*\.google\.com.*/safebrowsing/.* + api\.bing\.com.* + toolbar\.google\.com.* + .*yimg\.com.* + toolbar\.msn\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2)[\?;].* + toolbar\.avg\.com/.* + www\.google-analytics\.com.* + pgq\.yahoo\.com.* + safebrowsing.*\.google\.com.* + sqm\.microsoft\.com.* + g\.msn.* + clients.*\.google.* + .*toolbar\.yahoo\.com.* + geo\.yahoo\.com.* + + + true + 4 + false + + false + true + true + false + true + + + false + + 0 + + true + UTF-8 + + + + 8081 + 0 + 25 + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + + diff --git a/integration/load_003_search_payments.jmx b/integration/load_003_search_payments.jmx new file mode 100644 index 00000000..bca18c43 --- /dev/null +++ b/integration/load_003_search_payments.jmx @@ -0,0 +1,1143 @@ + + + + + false + false + + + + + + + + + + + host + ${__property(host,,127.0.0.1)} + = + + + scheme + ${__property(scheme,,http)} + = + + + port + ${__property(port,,5000)} + = + + + thinkTime + 3000 + = + + + defaultPaymentCount + 3 + = + + + configPath + ${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)} + = + + + paymentCount + 20 + = + + + userAdminKey + 070e45be347f47d5becb6b1a1f937709 + = + + + adminWalletKey + aba01f535a7241889ebe79035bd13fa9 + = + + + + + + + + + ${host} + ${port} + ${scheme} + + + 6 + Java + 20000 + 30000 + + + + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + + false + false + + + + false + true + + + + fragments/init-server.jmx + + + + + false + true + + + + groovy + + + true + ${__Random(0,1000000000, randomUserNamespace)} + To avoid collision between tests + + + + true + + + + false + { + "username": "user_${randomUserNamespace}", + "password": "secret1234", + "password_repeat": "secret1234", + "email": "u_${randomUserNamespace}@lnbits.com" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth/register + POST + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + username + user_${randomUserNamespace} + true + false + false + true + + + + userWalletId + + + no-user-wallet-id + + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth + GET + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + username + user_${randomUserNamespace} + true + false + false + true + + + + userWalletId + wallets[0].id + + no-user-wallet-id + + + + + javascript + + + true + var userWalletId = vars.get("userWalletId") + +props.put("userWalletId", userWalletId) + + + + + javascript + + + true + var adminWalletKey = vars.get("adminWalletKey") + +props.put("adminWalletKey", adminWalletKey) + + + + false + true + false + + + + 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 + + + + + + + + continue + + false + 1 + + 100 + 10 + 1370726934000 + 1370726934000 + false + + + false + + + + + false + false + + + + false + true + false + + + + false + true + + + + groovy + + + true + ${__Random(0,1000000000, randomUserNamespace)} + To avoid collision between tests + + + + fragments/init-server.jmx + + + + + true + + + + false + {"username":"admin","password":"secret1234"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + true + ${paymentCount} + + + + 1 + ${paymentCount} + 1 + paymentIndex + + true + + + + false + true + + + + 300 + + + + 1000 + 10 + + true + + amount + + + + true + + + + false + { + "out": false, + "amount": ${amount}, + "memo": "${randomUserNamespace}", + "unit": "sat", + "lnurl_withdraw": null, + "fiat_provider": "", + "payment_hash": null +} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/payments + POST + true + false + true + false + + + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0 + + + Sec-Fetch-Dest + empty + + + x-api-key + ${userAdminKey} + + + + + + + 201 + + + Assertion.response_code + false + 8 + + + + bolt11 + + false + false + false + true + + + + payment_hash + + false + false + false + true + + + + paymentRequest + bolt11 + 0 + no-payment-request + + + + paymentHash + payment_hash + 0 + no-payment-hash + + + + + + false + true + + + + true + + + + false + { + "out": true, + "amount": ${amount}, + "memo": "paying ${randomUserNamespace}", + "unit": "sat", + "bolt11": "${paymentRequest}" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/payments + POST + true + false + true + false + + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + X-Api-Key + ${adminWalletKey} + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 201 + + + Assertion.response_code + false + 8 + + + + payment_hash + ${paymentHash} + true + false + false + false + + + + + 200 + + + + + false + true + + + + 1000 + + + + + + + false + 500 + = + true + offset + + + false + time + = + true + sortby + + + false + desc + = + true + direction + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/payments/paginated + GET + true + false + true + false + + HttpClient4 + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + X-Api-Key + 27f2c9df619c4812bfc00e65c6f3f565 + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + + false + true + false + + + + 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 + + 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 + + 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 + + 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 + + + + 1000 + Response Time Graph + 0 + + + + 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 + + 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 + + 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 + + + + + + + 8888 + + windowsupdate\.microsoft\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2) + .*msg\.yahoo\.com.* + www\.download\.windowsupdate\.com.* + toolbarqueries\.google\..* + http?://self-repair\.mozilla\.org.* + tiles.*\.mozilla\.com.* + .*detectportal\.firefox\.com.* + us\.update\.toolbar\.yahoo\.com.* + .*\.google\.com.*/safebrowsing/.* + api\.bing\.com.* + toolbar\.google\.com.* + .*yimg\.com.* + toolbar\.msn\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2)[\?;].* + toolbar\.avg\.com/.* + www\.google-analytics\.com.* + pgq\.yahoo\.com.* + safebrowsing.*\.google\.com.* + sqm\.microsoft\.com.* + g\.msn.* + clients.*\.google.* + .*toolbar\.yahoo\.com.* + geo\.yahoo\.com.* + + + true + 4 + false + + false + true + true + false + true + + + false + + 0 + + true + UTF-8 + + + + 8081 + 0 + 25 + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + + diff --git a/integration/load_004_scenario_01.jmx b/integration/load_004_scenario_01.jmx new file mode 100644 index 00000000..f54ef453 --- /dev/null +++ b/integration/load_004_scenario_01.jmx @@ -0,0 +1,2108 @@ + + + + + false + false + + + + + + + + + + + host + ${__property(host,,127.0.0.1)} + = + + + scheme + ${__property(scheme,,http)} + = + + + port + ${__property(port,,5000)} + = + + + thinkTime + 1000 + = + + + configPath + ${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)} + = + + + paymentCount + 20 + = + + + testRun + ${__time(/1000,)} + = + + + userCount + 300 + = + + + + + + + + + ${host} + ${port} + ${scheme} + + + 6 + Java + 20000 + 30000 + + + + + + + + stoptest + + false + 1 + + 1 + 1 + false + + + true + + + + + false + false + + + + true + ${userCount} + + + + 1 + ${userCount} + 1 + userIndex + + true + + + + true + + + + false + { + "username": "uload_${testRun}_${userIndex}", + "password": "secret1234", + "password_repeat": "secret1234", + "email": "uload_${testRun}_${userIndex}@lnbits.com" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth/register + POST + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + username + user_${randomUserNamespace} + true + false + false + true + + + + userWalletId + + + no-user-wallet-id + + + + + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + GET + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + userSendWalletAdminKey + wallets[0].adminkey + + no-user-send-wallet-adminkey + + + + userSendWalletId_${userIndex} + wallets[0].id + + no-user-send-wallet-id + + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth/logout + POST + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + true + + + + false + {"username":"admin","password":"secret1234"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + true + ${userCount} + + + + 1 + ${userCount} + 1 + userIndex + + true + + + + true + + + var index = vars.get("userIndex") +var userWalletId = vars.get("userSendWalletId_"+index) +vars.put("userSendWalletId", userWalletId) + javascript + + + + true + + + + false + {"amount":"1000000","id":"${userSendWalletId}"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /users/api/v1/balance + PUT + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + false + true + false + + + + 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 + + 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 + + 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 + + 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 + + + + 1000 + scenario_01_setup + 0 + + + + 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 + + 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 + + + + + + + + continue + + false + 1 + + ${userCount} + ${userCount} + 1370726934000 + 1370726934000 + false + + + false + + + + + false + false + + + + false + true + + + + true + + + + false + {"username":"uload_${testRun}_${__threadNum}","password":"secret1234"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/auth + GET + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + userSendAdminKey + wallets[0].adminkey + + no-user-send-adminkey + + + + + false + true + + + + ${thinkTime} + + + + true + + + + false + {"name":"Wallet for ${__threadNum}","wallet_type":"lightning"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/wallet + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + x-api-key + ${userSendAdminKey} + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + userReceiveAdminKey + adminkey + + no-user-receive-adminkey + + + + + + true + ${paymentCount} + + + + 1 + ${paymentCount} + 1 + paymentIndex + + true + + + + false + true + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/extension + GET + true + false + true + false + + HttpClient4 + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + false + true + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/rate/USD + GET + true + false + true + false + + HttpClient4 + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + false + true + + + + ${thinkTime} + + + + 100 + 10 + + true + + amount + + + + true + + + + false + { + "out": false, + "amount": ${amount}, + "memo": "Payment ${paymentIndex}/${paymentCount} for test run ${__threadNum}/${testRun}", + "unit": "sat", + "lnurl_withdraw": null, + "fiat_provider": "", + "payment_hash": null +} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/payments + POST + true + false + true + false + + + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0 + + + Sec-Fetch-Dest + empty + + + x-api-key + ${userReceiveAdminKey} + + + + + + + 201 + + + Assertion.response_code + false + 8 + + + + bolt11 + bolt11 + + no-bolt11 + + + + + + false + true + + + + true + + + + false + { + "out": true, + "memo": "paying ${testRun}", + "unit": "sat", + "bolt11": "${bolt11}" +} + = + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/payments + POST + true + false + true + false + + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + X-Api-Key + ${userSendAdminKey} + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 201 + + + Assertion.response_code + false + 8 + + + + + ${thinkTime} + + + + + false + true + + + + ${thinkTime} + + + + + + + false + 0 + = + true + offset + + + false + time + = + true + sortby + + + false + desc + = + true + direction + + + false + failed + = + true + status[ne] + + + false + payment + = + true + search + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/payments/paginated + GET + true + false + true + false + + HttpClient4 + 60000 + + With search text + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + X-Api-Key + ${userSendAdminKey} + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + false + true + + + + ${thinkTime} + + + + + + + false + 0 + = + true + offset + + + false + time + = + true + sortby + + + false + desc + = + true + direction + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/payments/all/paginated + GET + true + false + true + false + + HttpClient4 + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + false + true + + + + ${thinkTime} + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/extension/all + GET + true + false + true + false + + HttpClient4 + 60000 + + + + + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Site + same-origin + + + Accept-Language + en-US,en;q=0.${lnurlpCount} + + + Origin + ${scheme}://${host}:${port} + + + Accept + application/json, text/plain, */* + + + Content-Type + application/json;charset=utf-8 + + + Accept-Encoding + gzip, deflate, br + + + User-Agent + Mozilla/${lnurlpCount}.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 + + + Sec-Fetch-Dest + empty + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + false + true + + + + ${thinkTime} + + + + true + + + + false + {"name":"Wallet ${paymentIndex}","wallet_type":"lightning"} + = + + + + ${host} + ${port} + ${scheme} + UTF-8 + /api/v1/wallet + POST + true + false + true + false + + + + + + + + + Referer + ${scheme}://${host}:${port}/ + + + Accept-Language + en-US,en;q=0.5 + + + Origin + ${scheme}://${host}:${port} + + + Content-Type + application/json + + + Accept-Encoding + gzip, deflate + + + User-Agent + Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 + + + Accept + application/json, text/plain, */* + + + x-api-key + ${userSendAdminKey} + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + + + + + + ${host} + ${port} + ${scheme} + utf-8 + /api/v1/auth/logout + POST + true + false + true + false + + + + + + + + + content-type + application/json + + + + + + + 200 + + + Assertion.response_code + false + 8 + + + + + false + true + false + + + + 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 + + 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 + + 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 + + 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 + + + + scenario_01 + 1 + + + + 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 + + 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 + + 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 + + + + + + + 8888 + + windowsupdate\.microsoft\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2) + .*msg\.yahoo\.com.* + www\.download\.windowsupdate\.com.* + toolbarqueries\.google\..* + http?://self-repair\.mozilla\.org.* + tiles.*\.mozilla\.com.* + .*detectportal\.firefox\.com.* + us\.update\.toolbar\.yahoo\.com.* + .*\.google\.com.*/safebrowsing/.* + api\.bing\.com.* + toolbar\.google\.com.* + .*yimg\.com.* + toolbar\.msn\.com.* + (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2)[\?;].* + toolbar\.avg\.com/.* + www\.google-analytics\.com.* + pgq\.yahoo\.com.* + safebrowsing.*\.google\.com.* + sqm\.microsoft\.com.* + g\.msn.* + clients.*\.google.* + .*toolbar\.yahoo\.com.* + geo\.yahoo\.com.* + + + true + 4 + false + + false + true + true + false + true + + + false + + 0 + + true + UTF-8 + + + + 8081 + 0 + 25 + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + +