Skip to Content
Yewodocs
Run tests

Run journey tests

Declare journeys in yewo.yaml and run them with yewo test.

Declare a journey

Create yewo.yaml in the app project. A minimal Android project looks like this:

yewo.yaml
device:
  name: Pixel_8
  platform: android

app: build/app-release.apk

model: <provider>/<semantic-model>

grounder:
  model: <provider>/<grounding-model>
  protocol: source_pixels

workflows:
  smoke:
    journeys:
      - id: sign_in
        name: Sign in
        journey: |
          Open the app, sign in with the test account, and open Settings.

See Choose your models for the two model settings and the credentials they need.

Run

Run every workflow and target declared by the nearest yewo.yaml:

yewo test

Select workflows or targets with comma-separated identifiers:

yewo test --workflow smoke
yewo test --target pixel,ios_simulator

Test on more than one device

Declare each device you want under targets. Give every target an id, which is the name you pass to --target and the name that appears in reports:

yewo.yaml
targets:
  - id: pixel
    platform: android
    device: Pixel_8
  - id: ios_simulator
    platform: ios
    device: iPhone 17 Pro
    app: build/ios/iphonesimulator/Runner.app

A target runs the workflow app unless you give it its own app. Yewo runs the targets in order, and each journey-target pair gets its own device session.

Each selected journey-target pair gets its own device session. Yewo discovers the journey, records reusable app knowledge, generates scenarios grounded in that evidence, executes them, and audits each scenario independently.

Output

Each run stores its output under assets/yewo/<run-id>/ by default. A completed journey test includes:

FileContents
reports/run.jsonThe canonical machine-readable run record.
reports/report.htmlAn interactive report.
reports/report.mdA Markdown summary.
reports/junit.xmlA CI-compatible test report.

Set output_dir in yewo.yaml to replace assets/yewo with another output root.

On this page