-
Notifications
You must be signed in to change notification settings - Fork 3.4k
fix: Next button visibility and behaviour during stepping. Fixes #32476 #32536
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@erikeichmuller Thanks! I'm running the tests. It'd be great to have tests around this new behavior. They would be updated here:
describe('pause controls', () => { |
@jennifer-shehane Thank you for your comment! I've added and updated tests for the "pause controls", which I believe cover the new behavior. Please let me know if you'd like me to make any further adjustments. |
50a1217
to
72a49cc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mabela416 I understand, but the issue presented this scenario: As of my understanding the test is running here, but this scenario is not to be implemented then? |
Yeah that is correct. The scenario on the screenshot is when the test had paused and then you resume so the test continues running which is different from when the tests are running and never paused. |
@mabela416 Thank you for the clarification! I've implemented the changes and also updated the description of the PR. |
}) | ||
|
||
it('does not display next button', () => { | ||
it('does not displays the next button', () => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it('does not displays the next button', () => { | |
it('does not display the next button', () => { |
@erikeichmuller Can you fix the changelog entry. Other than that, it looks good! |
Additional details
This change fixes the Next button placement and behavior during test stepping workflow. The issue was that the Next button would appear and disappear inconsistently during stepping, causing poor UX when debugging tests with
cy.pause()
andcy.debug()
commands.Why was this change necessary?
What is affected by this change?
isResumed
property to track resume statusImplementation details:
isPaused
OR(isRunning && isResumed)
isResumed
state: Tracks when tests have been resumed from pauseButton Behavior:
Testing
Added two new test scenarios:
How has the user experience changed?
Before: Next button would appear and disappear unpredictably during stepping making it difficult to maintain debugging flow.
After: Next button maintains consistent visibility during stepping sessions, staying visible but appropriately disabled when no immediate next command is available, providing clear visual feedback to users about stepping state.
1. Before tests start:

No Next button visible, clean interface
2. Test started (before the first cy.pause):

3. When paused with next command (enabled state):

Next button appears and is clickable when paused with available next command
4. When paused without next command (disabled state):

5. During test continued running after resume (disabled state) - NEW:

Next button stays visible but disabled (gray) during running states, maintaining consistent placement
The same scenario as the image above but when hovered
PR Tasks
✅ Have tests been added/updated?
Yes - Added test coverage in
packages/reporter/cypress/e2e/header.cy.ts
including two new scenarios: "when running after resume" and "when paused without next command".[na] Has a PR for user-facing changes been opened in
cypress-documentation
?This is a bug fix that improves existing functionality rather than adding new features requiring documentation.
[na] Have API changes been updated in the
type definitions
?No API changes - this is a UI component behavior fix.
Note
Makes the reporter Next button consistently visible during stepping (paused or running-after-resume), disabled when no next command exists, with appropriate tooltip and no-op clicks.
Controls
(packages/reporter/src/header/controls.tsx
): ShowNext
whenappState.isPaused
or(appState.isRunning && appState.isResumed)
; disable when nonextCommandName
; update aria-label, tooltip to "Step (not available)", and prevent emitting when disabled; adjust disabled hover/focus styles; gray icon when disabled.AppState
(packages/reporter/src/lib/app-state.ts
): AddisResumed
state (defaultfalse
), make observable; setisResumed=true
onresume()
.packages/reporter/cypress/e2e/header.cy.ts
):cli/CHANGELOG.md
): Add bugfix entry describing Next button placement/behavior during stepping.Written by Cursor Bugbot for commit 7c66f9e. This will update automatically on new commits. Configure here.