Lines Matching +full:integration +full:- +full:tests
1 # Running tests
9 Platform-agnostic unit-tests.
12 End-to-end tests, involving the protobuf-based IPC transport and ftrace
13 integration (Linux/Android only).
17 and (iii) ftrace raw pipe -> protobuf translation.
19 Running tests on Linux / MacOS
20 ------------------------------
23 tools/ninja -C out/default perfetto_{unittests,integrationtests,benchmarks}
24 out/default/perfetto_unittests --gtest_help
30 sudo chown -R $USER /sys/kernel/debug/tracing
33 Running tests on Android
34 ------------------------
36 1B) Start the build-in emulator (supported on Linux and MacOS):
39 tools/install-build-deps --android
43 2) Run the tests (either on the emulator or physical device):
50 ------------------
56 See [this doc](/docs/design-docs/continuous-integration.md) for more details.
58 **Android CI** (see go/apct and go/apct-guide):
70 Unit tests
71 ----------
72 Unit tests exist for most of the code in Perfetto on the class level. They
75 Unit tests are currently ran on ci.perfetto.dev and build.chromium.org.
76 Running unit tests on APCT and Treehugger is WIP.
78 Integration tests
79 -----------------
80 Integration tests ensure that subsystems (importantly ftrace and the IPC layer)
81 and Perfetto as a whole is working correctly end-to-end.
83 There are two configurations in which integration tests can be run:
85 **1. Production mode** (Android-only)
88 only the consumer endpoint and tests the interaction with the production
89 services. This is the way our Android CTS and APCT tests work.
94 run integration tests on Linux and MacOS.
96 Trace Processor diff tests
97 -----------------
98 Trace processor is mainly tested using so called "diff tests".
100 For these tests, trace processor parses a known trace and executes a query
104 Similar diff tests are also available when writing metrics - instead of a
108 These tests (for both queries and metrics) can be run as follows:
110 tools/ninja -C <out directory>
114 TIP: Query diff tests are expected to only have a single query which produces
122 UI pixel diff tests
123 -----------------
124 The pixel tests are used to ensure core user journeys work by verifying they
127 golden screenshot. You can run these tests by using `ui/run-integrationtests`.
130 These test fail when a certain number of pixels are different. If these tests
136 [here](https://g3doc.corp.google.com/cloud/sdk/g3doc/index.md#installing-and-using-the-cloud-sdk)).
139 ui/run-integrationtests --rebaseline
147 by using a link ending with `ui-test-artifacts/index.html`. Report located on
151 Android CTS tests
152 -----------------
153 CTS tests ensure that any vendors who modify Android remain compliant with the
156 These tests include a subset of the integration tests above as well as adding
157 more complex tests which ensure interaction between platform (e.g. Android apps
163 adb push $ANDROID_HOST_OUT/cts/android-cts/testcases/CtsPerfettoTestCases64 /data/local/tmp/
164 adb install -r $ANDROID_HOST_OUT/cts/android-cts/testcases/CtsPerfettoProducerApp.apk
176 ------------------
178 [this autoroller](https://autoroll.skia.org/r/perfetto-chromium-autoroll).
187 auto-rolls into Chromium).
216 'action': [ 'git', '-C', 'src/third_party/perfetto/',
224 'action': ['git', '-C', 'src/third_party/perfetto/',
225 '-c', 'user.name=Custom Patch', '-c', 'user.email=custompatch@example.com',
226 'cherry-pick', 'FETCH_HEAD',
232 can add `Cq-Include-Trybots:` lines for perfetto SDK trybots to the change
237 Cq-Include-Trybots: luci.chromium.try:linux-perfetto-rel
238 Cq-Include-Trybots: luci.chromium.try:android-perfetto-rel
239 Cq-Include-Trybots: luci.chromium.try:mac-perfetto-rel
240 Cq-Include-Trybots: luci.chromium.try:win-perfetto-rel
243 [chromium_buildbot]: https://cs.chromium.org/search/?q=perfetto_.*tests+f:%5Esrc/testing.*json$&sq=…
244 [chromium_cl]: https://chromium-review.googlesource.com/c/chromium/src/+/2030528