PTF - Report Template(New Version)

Test status: PASSED| PASSED WITH RESTICTION| FAILED

 

The general recommendation for report formatting:[Do not include the section in reports ]

  1. Make the page full-width Set your Confluence page to full-width to utilize the entire space available. This makes your report more readable and gives more room for arranging content aesthetically.

  2. Image wide 1600px. This width offers a good balance, ensuring that images are clear and detailed without causing excessive loading times or appearing too large on the page.

  3. For graphs from AWS CloudWatch use 1 minute metrics aggregation.

Further changes are welcome

Overview

[ A brief introduction about the content of the page, why we are testing the workflow and reference the Jira(s)]

Summary

[ A bulleted-list of the most important and relevant observations from the test results. What are the most important things the readers need to know about this testing effort? Some suggestions

  • Comparison to previous test or release of response times or API durations

  • Any notable changes

  • Particular response time or durations

  • Service memory and/or CPU utilization

  • RDS memory and/or CPU utilization 

  • Other interesting observations

]

Recommendations & Jiras (Optional)

[ If there are recommendations for the developers or operations team, or anything worth calling out, list them here. Also include any Jiras created for follow-up work]

Test Runs 

[Table of tests with short descriptions. If there are motivations to run additional tests because of any reason, include a note column to explain]

Test #

Test Conditions

Duration 

Load generator size (recommended)

Load generator Memory(GiB) (recommended)

Notes

(Optional)

Test #

Test Conditions

Duration 

Load generator size (recommended)

Load generator Memory(GiB) (recommended)

Notes

(Optional)

  1.  

8 users CI/CO + DI 50k MARC BIB Create+ 10k Items editing

30 mins

t3.medium

3

 

  1.  

8 users CI/CO + DI 50k MARC BIB Create+ 10k holdings editing

30 mins

t3.medium

3

 

Results

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[ Tables of detailed test results with comments]

Response Times (Average of all tests listed above, in seconds)

 

 

Check-in-check-out

Bulk edit

Data Import

 

Check-in-check-out

Bulk edit

Data Import

 

Average (seconds)

Items

Holdings

MARC BIB

 

Check-in

Check-out

10k records

10k records

50k Create

50k Update

Test 1

0.715

1.332

40 min

-

20 min 19 sec

-

Test 2

0.756

1.383

-

20 min 30 sec

21min  07 sec

-

 

Comparisons

[Part to compare test data to previous tests or releases. It's important to know if performance improves or degrades]

The following table compares additional test results to previous release numbers and to the CICO baselines Nolana (of Check In average time 0.456s and Checkout average time 0.698s). Note that Lotus numbers are in red, Nolana numbers are in black, and Kiwi numbers are in blue.

In the Nolana version, there is a significant improvement in the performance of data import and CheckIn/CheckOut.

For the baseline test the mod-source-record-manager version was 3.5.0 for the test with CI/CO it was 3.5.4. Mabey it is the reason why the time of Data Import with CI/CO is even better than without CI/CO.

 

Profile

Duration

KIWI (Lotus) without CICO

Duration

with CICO 8 users KIWI (Lotus)

Duration

Nolana without CICO

Duration

with CICO 8 users Nolana

CheckIn average (seconds) 

CheckOut average (seconds) 

Deviation From the baseline CICO response times

 

Profile

Duration

KIWI (Lotus) without CICO

Duration

with CICO 8 users KIWI (Lotus)

Duration

Nolana without CICO

Duration

with CICO 8 users Nolana

CheckIn average (seconds) 

CheckOut average (seconds) 

Deviation From the baseline CICO response times

5K MARC BIB Create

PTF - Create 2

5 min, 8 min (05:32.264)

(08:48.556)

 5 min

(05:48.671)

2 min 51 s

00:01:56.847

0.851

0.817

1.388

1.417

CI:  44%

CO:  51%

5K MARC BIB Update

PTF - Updates Success - 1

11 min, 13 min

(10:07.723)

7 min

06:27.143

2 min 27s

00:02:51.525

1.102

0.747

1.867

1.094

CI:  39%

CO:  36

Attach the link to the report from which the data for comparison was extracted.

Memory Utilization


[Description of notable observations of memory utilization with screenshots(of all modules and involved modules) and tables]

 

 

Nolana Avg

Nolana Min

Nolana Max

 

Nolana Avg

Nolana Min

Nolana Max

mod-circulation-storage

24%

23%

25%

mod-patron-blocks

34%

33%

34%

CPU Utilization 

[Description of notable observations of modules and instances CPU utilization with screenshots (of all modules and involved modules) and tables]

 

 

RDS CPU Utilization 

[Description of notable observations of reader and writer instances CPU utilization with screenshots and tables, RDS Database connections, and other Database metrics]

 

Additional information from module and database logs (Optional)

[ Although it is optional to look at logs it is always recommended to look at the logs to see if there were any errors,  exceptions, or warnings.  If there were any, create Jiras fo rthe module that generated the warnings/errors/exceptions]

 

Discussion (Optional)

[ This section gives more space to elaborate on any observations and results.  See Perform Lookups By Concatenating UUIDs (Goldenrod)#Discussions for example.]

Errors

This section should detail any errors encountered during the testing process, their impact on testing outcomes, and the steps taken to address these issues.

Appendix

Infrastructure

[ L:ist out environment's hardware and software settings. For modules that involve Kafka/MSK, list the Kafka settings as well.  For modules that involve OpenSearch, list these settings, too] 

PTF -environment ncp3 [ environment name] 

  • 9 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 [Number of ECS instances, instance type, location region]

  • 2 instances of db.r6.xlarge database instances, one reader, and one writer [database instances, type, size, main parameters]

  • MSK ptf-kakfa-3 [ kafka configurations]

    • 4 m5.2xlarge brokers in 2 zones

    • Apache Kafka version 2.8.0

    • EBS storage volume per broker 300 GiB

    • auto.create.topics.enable=true

    • log.retention.minutes=480

    • default.replication.factor=3

 

Modules memory and CPU parameters [table of services properties, will be generated with script soon]
Use fse-get-ecs-cluster-services-info Jenkins job to get table with services configuration.

Modules

Version

Task Definition

Running Tasks 

CPU

Memory

MemoryReservation

MaxMetaspaceSize

Xmx

Modules

Version

Task Definition

Running Tasks 

CPU

Memory

MemoryReservation

MaxMetaspaceSize

Xmx

mod-inventory

19.0.1

1

2

1024

2880

2592

512m

1814m

okapi

4.14.7

1-2

3

1024

1684

(1512 in MG)

1440

(1360 in MG)

512m

922m

MG- Morning Glory release

Front End: [ front end app versions (optional)]

  • Item Check-in (folio_checkin-7.2.0)

  • Item Check-out (folio_checkout-8.2.0)

Methodology/Approach

[ List the high-level methodology that was used to carry out the tests.  This is important for complex tests that involve multiple workflows.

1. Preparation Steps: Provide a comprehensive overview of the preparation process preceding the test. This includes setting up the test scripts, configuring relevant parameters, and ensuring all necessary tools and resources are in place.
2. Data preparation scripts. In the context of performance testing, data preparation is a critical step to ensure that the testing environment accurately reflects real-world usage patterns and can handle the intended load efficiently. To facilitate this process, specific scripts are used to populate the test database with the necessary data, simulate user transactions, or configure the environment appropriately. Add links needed scripts to git hub and write a short description of how to use/run them.
3. Test Configuration: Specify the exact configurations utilized during the test execution. Duration, number of virtual users, rumup period etc.
It's important to inform readers of how the tests were performed so that they can comment on any flaw in the test approach or that they can try to reproduce the test results themselves.  For example:

  1. Start CICO test first

  2. Run a Data Import job after waiting for 10 minutes

  3. Run an eHoldings job after another 10 minutes

  4. On another tenant run another DI job after 30 minutes in

The steps don't need to be very specific because the details are usually contained in the participating workflow's README files (on GitHub).  However, anything worth calling out that was not mentioned elsewhere should be mentioned here.

4. Metric Collection Approach: Describe the methodology adopted to collect and interpret metrics during testing. Highlight the tools employed for data collection, SQL queries to get data, or other approaches(Get metrics from JMeter jtl reports) that was used for specific PTF-tests

Also, it is necessary to include the approach taken to obtain the final results. For example, please document if the results were obtained by zooming into a portion of the graphs in Grafana (which portion?, why?), how the numbers were calculated if not obvious. ] 

Additional Screenshots of graphs or charts (Optional)

[ Optionally include additional screenshots of graphs on the Cloudwatch and Grafana dashboards for completeness sake. These don't have to be solely included in here but can be added in any section if they complement other graphs and fit the narrative. ]