Comfy-Org / Comfy-Org/ComfyUI_frontend

feat: add devtools extension support for multi-output job simulation to enable Playwright E2E testing

Open
#10,381 0 comments 0 reactions 1 assignee Claimed by @DrJKL View on GitHub
area:testing developer experience
Dominant language
TypeScript
Stars
2k
Forks
704
Avg merge
1d 8h
Merged PRs (30d)
512

Description

## Summary

The [WidgetSelectDropdown multi-output fix (PR #10131)](https://github.com/Comfy-Org/ComfyUI_frontend/pull/10131) could not include an E2E Playwright test because the lazy-loading path (triggered when `outputs_count > 1`) requires a running backend that actually produces multiple outputs from a single job.

## Requested Change

Add support in the devtools extension (or a Playwright test fixture/helper) that allows E2E tests to:

1. **Inject mock job responses** — stub `getJobDetail` responses with synthetic multi-output payloads so Playwright tests don't need a live backend.
2. **Simulate multi-output jobs** — provide a way to mount or drive the `WidgetSelectDropdown` component in a browser context with controllable `outputs_count` and full output asset lists.
3. **Assert dropdown expansion** — verify that the Outputs tab in FormDropdown shows one item per output (not just the single `preview_output` returned by `/jobs`).

## Motivation

Without this, the lazy-resolution + caching logic in `WidgetSelectDropdown.vue` (`resolvedByJobId`, `pendingJobIds`, `resolveOutputAssetItems`) is only covered by unit tests. Playwright coverage would catch regressions in the full interactive flow (dropdown open → fetch → expand → display).

## References

- PR: https://github.com/Comfy-Org/ComfyUI_frontend/pull/10131
- Comment: https://github.com/Comfy-Org/ComfyUI_frontend/pull/10131#issuecomment-2736455869
- Requested by: @DrJKL

┆Issue is synchronized with this [Notion page](https://www.notion.so/Issue-10381-feat-add-devtools-extension-support-for-multi-output-job-simulation-to-enable-Playwr-32a6d73d36508185bb66d412df8e33a8) by [Unito](https://www.unito.io)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.