This proto defines the format of the testplan used by Franky. It is intended to be used as a human-readable text representation.
As a generally accepted practice for protobufs, try to keep it backwards-compatible by not renaming or renumbering fields and enum constants. Protobufs have effectively “add only” schemas.
If you add a new *.proto
file, also add it to the Makefile
.
Once modified, compile the protos by running:
make
and make sure the resulting *_pb2.py
files are checked in. We do not expect the users to have protoc
compiler available on their system when running Franky.
A test plan file contains a list of tests in a format like this:
test { description: "First Run UI Flow" step: { description: "Remove, Install and Launch Chrome" action: { system: ReinstallAndLaunchApp } } step: { description: "Tap Accept and continue." action: { tap: Tap } locate_by: ID path: "Accept & Continue" } step: { description: "Skip Login" action: { tap: Tap } locate_by: ID path: "SkipButtonAccessibilityIdentifier" } } test { description: "Manage Accounts Add/Remove" step: { description: "Open Settings tab" action: { menu: OpenSettingsMenu } } // ... }
Comments start with //
, but are generally discouraged, since testplans will likely be updated and regenerated from spreadsheets, and comments will be lost.