{"id":20505638,"url":"https://github.com/openbankproject/loadtesting","last_synced_at":"2025-03-05T21:28:33.365Z","repository":{"id":144891301,"uuid":"84436794","full_name":"OpenBankProject/LoadTesting","owner":"OpenBankProject","description":"Load testing scripts to run against Open Bank Project","archived":false,"fork":false,"pushed_at":"2017-05-30T10:23:14.000Z","size":29,"stargazers_count":1,"open_issues_count":1,"forks_count":8,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-01-16T07:57:14.642Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenBankProject.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-09T11:55:41.000Z","updated_at":"2020-01-29T21:34:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"485b9748-9b3d-4d7e-ade8-92cb32c644ee","html_url":"https://github.com/OpenBankProject/LoadTesting","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenBankProject%2FLoadTesting","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenBankProject%2FLoadTesting/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenBankProject%2FLoadTesting/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenBankProject%2FLoadTesting/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenBankProject","download_url":"https://codeload.github.com/OpenBankProject/LoadTesting/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242105244,"owners_count":20072454,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T19:48:36.360Z","updated_at":"2025-03-05T21:28:33.358Z","avatar_url":"https://github.com/OpenBankProject.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# LoadTesting\n\nLoad testing scripts to run against Open Bank Project\n\n## Tools\n\nArtillery (https://artillery.io) and Apache Jmeter (http://jmeter.apache.org/) are used for the load testing.\n\n## Using Artillery\n\nArtillery is written in Node.js (but you don’t need to know Node or JS to use it). Grab the appropriate package from \nnodejs.org or install Node.js with your favorite package manager first. Note: Artillery requires Node.js 4 or higher \n(Node.js 6+ is recommended).\n\nOnce Node.js is installed, install Artillery with:\n\n    npm install -g artillery\n\nTo check that the installation succeeded, run:\n\n    artillery dino\n\nIf you see an ASCII dinosaur, the installation has been successful!\n\n## Run a quick test\n\nArtillery has a quick command which allows you to use it for ad-hoc testing (in a manner similar to ab). Run:\n\n    artillery quick --duration 60 --rate 10 -n 20 https://experimental-api.openbankproject.com/\n\nTo create 10 virtual users every second for 60 seconds which will send 20 GET requests each.\n\n## Run a test script\n\nScripts are written in YAML. The load testing scripts have two main parts to them - config and scenarios.\n\nIn our tests we simulate a user trying to get their transaction details from the OBP api. In the test script you might \nwant to change the token and the URL for the transaction accordingly.\n \nThe test has three phases:\n\n1. Create 10 virtual users every second for 3 minutes (WARM UP)\n2. Ramp up to 50 virtual users a second over another 3 minutes\n3. Run at 50 virtual users a second for 25 mins\n\nTo run the test script, cd to the directory which has the test script and issue the command:\n\n    artillery run obploadtest.yml\n    \n## Reading the outputs\n\nWhile the test is running, intermediate stats will be printed every 10 seconds (by default) and a complete report will \nbe printed at the end of the test. To understand the details of the report, please refer to this page \nhttps://artillery.io/docs/gettingstarted.html#reading-the-output.\n\nIt is also possible to generate a graphical report using the following command:\n\n    artillery report artillery_report_20170309_124264.json\n    \nHere you should replace the file name with the one the test generated for you.\n\nThis will generate an html file of the report and display it on your default web browser.\n\n## Apache Jmeter\n\nTo run the load tests using Apache Jmeter, open the test plans from the jmeter directory uing Apache Jmeter and run.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenbankproject%2Floadtesting","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenbankproject%2Floadtesting","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenbankproject%2Floadtesting/lists"}