commit | c4c3cebfa59102b4f8cda9304c9734a5e73c6e92 | [log] [tgz] |
---|---|---|
author | Lalit Maganti <lalitm@google.com> | Thu Mar 29 20:38:13 2018 +0100 |
committer | Lalit Maganti <lalitm@google.com> | Thu Mar 29 20:38:13 2018 +0100 |
tree | 90b30181ab213fb53198c9235221c8858cbd0a9a | |
parent | ba135fe7edc891e445ce0b1421e6adbbdeea4fad [diff] |
perfetto: refactor test code to consolidate pattern With several types of testing now present, a clear pattern has been established in how test code for end to end tests should be written. This pattern involves spinning up service and producer, setting up a test-specific trace config and then defining an intricate set of checkpoints and RunUntilCheckpoint calls. All of this code is duplicated and this will only get worse as we add more benchmarks and tests to the codebase. Moreover, the complex-appearance of the code hides the true simplicity within. Refactor all the duplicated code into a helper file and call the functions in this class from the four other cases where they are used (integration test, fuzzer, benchmark and CTS). Bug: 74380167 Change-Id: I261636b3da15b16f063e6a5dc6c293080b8ff4ac
This project is meant to be built both as part of the Android tree and from a standalone checkout
For internal docs see this page
Android is the platform targeted in the first milestones. Right now Linux desktop and OSX are maintained best-effort.
This project uses Android AOSP Gerrit for code reviews and uses the Google C++ style. Currently targets -std=c++11
.
You can use both git cl upload
from Chromium depot tools or Android repo to upload patches.
git cl
is quite convenient as it supports code auto-formatting via git cl format
.
See https://source.android.com/source/contributing for more details about external contributions and CLA signing.
See docs/build_instructions.md
Continuous build and test coverage is available at perfetto-ci.appspot.com. Trybots: CLs uploaded to gerrit are automatically submitted to TravisCI within one minute and made available on the CI page above. The relevant code lives in the infra/ directory.
$ tools/ninja -C out/default (tracing_unittests | tracing_benchmarks) $ out/default/tracing_unittests --gtest_help
Either connect a device in ADB mode or use the bundled emulator.
To start the emulator:$ tools/run_android_emulator (arm | arm64) &
To run the tests (either on the emulator or physical device):$ tools/run_android_test out/default tracing_unittests