Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

.ad files cannot reach off-screen elements, and test --platform skips files without a platform header

Aperta
#3,197 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@thymikee ci sta già lavorando.

Dal 5/10/2026.

  • #3234 di @thymikee — aperta
  • #3241 di @thymikee — aperta

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
55/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
cli

Direzione di ricerca

Start in the replay/.ad parser and the command flag table where scroll --until is marked recorded: false; the scroll handler is what rejects the extra argument, and wait --raw fails through the same argument splitter. For part 2, find where test --platform assembles the internal missing platform metadata skip reason and where the user-facing No replay tests matched error is built. Part 3 is a flag table for help scripting. Done means scroll down --until 'id="x"' works inside a .ad file, the platform error names the skip reason, and the docs list which CLI flags are valid in .ad files.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

I use agent-device test with .ad files to replay example apps on an Android emulator and an iOS simulator. Three things make long screens hard to replay in a deterministic way. Version: 0.21.20.

1. .ad files cannot reach an off-screen element

wait, is, and press only see elements that are on screen. That is fine. But I cannot get an element on screen in a .ad file in a viewport-independent way:

  • scroll down --until 'label="ok:ready"' works from the CLI. In a .ad file it fails with scroll amount must be a number, because --until is not parsed (it is recorded: false in the flag table).
  • wait id="x" --raw and wait --raw id="x" both fail in a .ad file (is followed by unexpected extra arguments / mixes plain word "--raw").

So a .ad file has to use fixed scroll down steps. They pass on one screen size and fail on another. Example: the same flow passed on a Medium Phone emulator and failed on an iPhone 17 simulator, because the target button was one page lower.

Repro:

open "com.example.app" --relaunch
scroll down --until 'id="far-button"'
press id="far-button"
close

Expected: the scroll repeats until far-button is visible, as it does in the CLI.
Actual: scroll amount must be a number.

Request: support --until <selector> for scroll in .ad files (and replays), or give .ad files another way to bring a selector on screen.

2. test --platform skips files that have no platform metadata

agent-device test e2e/*.ad --platform android --serial emulator-5554 fails with No replay tests matched for --platform android. when the .ad files have no platform header. Without --platform the same files run on that serial. The skip reason (missing platform metadata for --platform android) is only in the internal entry, not in the error the user sees.

Request: when --serial or --udid already selects the device, treat header-less files as runnable on that platform, or say in the error that the files were skipped because they have no platform header, and how to add one.

3. Docs

I could not find the .ad syntax for flags per command, or a list of which CLI flags work inside .ad files. A short table in help scripting would have saved me some time.

Thanks for the tool. My workaround for 1 is an accessible element that stays on screen and carries all result values in its label. It works, but it means changing the app for the test runner.

Lingua principale
TypeScript
Stelle
4.8k
Fork
315
Merge medio
11h 37m
PR unite (30g)
556

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di callstack/agent-device

Tutte le issue di callstack/agent-device

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.