chromium/third_party/blink/perf_tests/layout/flexbox-input.html

<!DOCTYPE html>
<script src="../resources/runner.js"></script>
<div style="display: flex; width: 600px; height: 600px;">
  <div style="width: 200px;"></div>
  <div style="display: flex; flex-direction: column; flex-grow: 1; overflow-y: auto;">
    <div style="flex-grow: 1; position: relative;">
      <div style="position: absolute; width: 100%; height: 100%; display: flex; flex-direction: column;">
        <div id="container" style="overflow-y: auto;"></div>
      </div>
    </div>
    <div id="target" style="min-height: 20px"></div>
  </div>
</div>
<script>
const container = document.getElementById('container');
for (let i = 0; i < 500; i++) {
  const child = document.createElement('div');
  child.innerText = 'This is some placeholder text.';
  container.appendChild(child);
}

const target = document.getElementById('target');
PerfTestRunner.measureRunsPerSecond({
  description: 'Measures performance of a series of nested flexboxes with input changing.',
  run: () => {
    target.innerText = Math.random();
    PerfTestRunner.forceLayout();
  },
  done: () => {
    document.body.children[0].style.display = 'none';
  }
});
</script>