You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
testmd export (Playwright/Python) generates select_option()with no arguments for a recorded dropdown selection, even though the recording carries the selected value. The generated line selects nothing, and the test silently derails from that point on.
Evidence
CLI 0.6.4, 2026-07-24. Recorded action (from actions.ndjson — note action_params.value is present and the selector is a clean testid):
even though the freshly authored recording carries internal:testid=[data-testid="decision-outcome"s] with expected_value: "Decline". Codegen discards the recorded anchors it should trust — same family as #150.
Ask
Emit the recorded value/label/index in select_option(...) — and fail codegen loudly if none survives serialization, rather than emitting a no-op call.
Add a codegen test with non-ASCII characters in option values.
We added a /apply?persona=<id> deep-link testability hook to the application so TMS-executed tests avoid the <select> entirely — workable for us, not for teams who can't modify the AUT.
Summary
testmd export(Playwright/Python) generatesselect_option()with no arguments for a recorded dropdown selection, even though the recording carries the selected value. The generated line selects nothing, and the test silently derails from that point on.Evidence
CLI 0.6.4, 2026-07-24. Recorded action (from
actions.ndjson— noteaction_params.valueis present and the selector is a clean testid):{"action_type": "select", "action_instruction": "Selecting the sample applicant persona dropdown option", "selectors": [{"selector": "internal:testid=[data-testid=\"persona-select\"s]", "score": 100}], "action_params": {"value": "Dana Ortiz · Decline", "label": null, "index": null}}Generated code for that action:
Suspect: the non-ASCII
·(U+00B7) in the option value trips the argument serialization.Impact — silent cascade, both false-fails AND false-passes
In our lending AUT the dropdown loads an applicant persona (prefills every form field). With the selection dropped:
Compounding issue (same export)
The decision extraction in the same generated file is re-derived as a brittle text-glob with no expected value:
even though the freshly authored recording carries
internal:testid=[data-testid="decision-outcome"s]withexpected_value: "Decline". Codegen discards the recorded anchors it should trust — same family as #150.Ask
value/label/indexinselect_option(...)— and fail codegen loudly if none survives serialization, rather than emitting a no-op call.Workaround
We added a
/apply?persona=<id>deep-link testability hook to the application so TMS-executed tests avoid the<select>entirely — workable for us, not for teams who can't modify the AUT.