Skip to content

[Fabric]: Performance Tests for React Native Windows#15666

Open
iamAbhi-916 wants to merge 23 commits intomicrosoft:mainfrom
iamAbhi-916:perf-test
Open

[Fabric]: Performance Tests for React Native Windows#15666
iamAbhi-916 wants to merge 23 commits intomicrosoft:mainfrom
iamAbhi-916:perf-test

Conversation

@iamAbhi-916
Copy link
Contributor

@iamAbhi-916 iamAbhi-916 commented Feb 15, 2026

Description

Performance testing framework for RNW Fabric components.
Each test measures mount, unmount, re-render and component specific test scenario times also records baselines via snapshot matching.

How to Run

cd packages/e2e-test-app-fabric
yarn perf                                              # all tests
yarn perf -- --testPathPattern=FlatList                 # single component
yarn perf:update                                       # update all baselines
yarn perf:update --testPathPattern=TouchableHighlight   # update one baseline

CLI Generator

yarn perf:create -- --name=ComponentName scaffolds a new .perf-test.tsx file with the correct structure, required props detection, and category selection.

Type of Change

  • New feature (non-breaking change which adds functionality)

Why

RNW Fabric had no automated way to catch render performance regressions in core components.

Resolves #15665

What

Refer this wiki : https://github.com/microsoft/react-native-windows/wiki/Performance-tests-Fabric

Screenshots

image

Testing

Tested locally, mock ran as CI

Changelog

Should this change be included in the release notes: yes

Add a brief summary of the change to use in the release notes for the next release.
Added @react-native-windows/perf-testing, a component performance testing framework for RNW Fabric

Microsoft Reviewers: Open in CodeFlow

@iamAbhi-916 iamAbhi-916 changed the title [Fabric]: Performance Tests for React Native Windows(Component wise) [Fabric]: Performance Tests for React Native Windows Feb 15, 2026
@vineethkuttan vineethkuttan marked this pull request as ready for review February 16, 2026 09:34
@vineethkuttan vineethkuttan requested review from a team as code owners February 16, 2026 09:35
@HariniMalothu17 HariniMalothu17 self-requested a review February 17, 2026 09:15
@acoates-ms
Copy link
Contributor

Can we make the tests be more intensive. Perf tests that are measuring 5ms, are not likely to notice even a 10% regression in time (as 10% increase of 5ms is still 5ms with that level of accuracy).

Can we make 100x the number of components or something to try to get bigger numbers, where changes would be more noticable?

@iamAbhi-916
Copy link
Contributor Author

Can we make the tests be more intensive. Perf tests that are measuring 5ms, are not likely to notice even a 10% regression in time (as 10% increase of 5ms is still 5ms with that level of accuracy).

Can we make 100x the number of components or something to try to get bigger numbers, where changes would be more noticable?

Initial focus was coverage breadth — getting all 14 components wired up with mount/unmount/rerender baselines and the statistical framework (Mann-Whitney, CV gate) and single-component scenarios validate correctness and catch catastrophic regressions (e.g. 0 ms → 50 ms), but you're right that they can't catch subtle ones.

Added stress tests !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Component wise performance tests for fabric

4 participants