tree: 51df001dcd35cdeb7c1e5fc3f9c45b5e0d5ad87e [path history] [tgz]
  1. config/
  2. release/
  3. src/
  4. .eslintrc.js
  5. .gitignore
  6. .prettierignore
  7. .prettierrc.yml
  8. build
  9. BUILD.gn
  10. build.js
  11. eslint
  12. eslint.config.js
  13. format-sources
  14. node
  15. npm
  16. OWNERS
  17. package.json
  18. playwright.config.ts
  19. pnpm
  20. pnpm-lock.yaml
  21. PRESUBMIT.py
  22. prettier
  23. README.md
  24. run-all-tests
  25. run-dev-server
  26. run-integrationtests
  27. run-unittests
  28. tsconfig.base.json
  29. tsconfig.json
ui/README.md

Perfetto UI

Quick Start

$ git clone https://android.googlesource.com/platform/external/perfetto/
$ cd perfetto

# Install build dependencies
tools/install-build-deps --ui

# Will build into ./out/ui by default. Can be changed with --out path/
# The final bundle will be available at ./ui/out/dist/.
# The build script creates a symlink from ./ui/out to $OUT_PATH/ui/.
ui/build

# This will automatically build the UI. There is no need to manually run
# ui/build before running ui/run-dev-server.
ui/run-dev-server

Then navigate to http://localhost:10000.

See also https://perfetto.dev/docs/contributing/build-instructions#ui-development

Unit tests

ui/run-unittests  # Add --watch to run them in watch mode.

Integration tests (browser screenshot difftests)

run-integrationtests

To rebaseline screenshots after a UI change

ui/run-integrationtests --rebaseline

tools/test_data upload

git add -A

git commit

See also https://perfetto.dev/docs/contributing/testing#ui-pixel-diff-tests