Additional performance test data

Hey everyone,

Recently we have been establishing a way to generate, load and manage performance test data to our test server (which can be seen in OLMIS-2883 ). As part of the work to see how the system performs when a user has 1000 supervised facilities (for OLMIS-2959 ), we have added additional performance test data to reference data. Here are some steps on how to add performance data to a service, using getting user supervised facilities as an example.

  • Determine what test data is needed for the performance test.
    • For our example, we are just trying to make the administrator user supervise 1000 facilities. Since the requisition groups and facilities we need already exist in performance data, the only two tables we need to populate are requisition_group_members (so that each requisition group has ~333 member facilities) and supported_programs (so that each facility supports both demo data programs).
  • Generate performance test data.
    • Our tool of choice is Mockaroo. (Credentials are on the OpenLMIS IT page on Confluence.) Use that to generate a large amount of test data.
    • Add any dependent demo datasets to Mockaroo.
      • Example: since requisition_group_members reference requisition groups and facilities, we need to add requisition group demo data to the list of datasets in Mockaroo. (The facility dataset already exists there.)
      • Example: since supported_programs reference facilities and programs, we need to add program demo data to the list of datasets in Mockaroo.
    • Add a schema for any new test data we need to generate. Choose Dataset Column as the Type for dependent demo datasets.
      • Example: create schemas for requisition_group_members and supported_programs.
    • Once added, choose Download Data to download the CSV and add it to our source control.
  • Update performance test data tool to load the new test data.
    • The Java bean (in reference data) is called TestDataInitializer; add a new resource and insert command for each new CSV file.
      • Example: a new resource and command was added for requisition group members and supported programs.
    • Save changes to our source control.

That should be it; the new performance test data will be loaded with the existing data.

Shalom,

Chongsun

– ​

There are 10 kinds of people in this world; those who understand binary, and those who don’t.

Chongsun Ahn | chongsun.ahn@villagereach.org

Software Development Engineer

Village****Reach* ** Starting at the Last Mile*

2900 Eastlake Ave. E, Suite 230, Seattle, WA 98102, USA

DIRECT: 1.206.512.1536 **CELL: **1.206.910.0973 FAX: 1.206.860.6972

SKYPE: chongsun.ahn.vr

www.villagereach.org

Connect on Facebook****, Twitter** ** and our Blog