Skip to content

[e2e tests] Disable "aria-required-children" accessibility check on the Item Edit page, as it's gotten very flakey#5598

Merged
tdonohue merged 1 commit into
DSpace:mainfrom
tdonohue:disable_flakey_test
May 1, 2026
Merged

[e2e tests] Disable "aria-required-children" accessibility check on the Item Edit page, as it's gotten very flakey#5598
tdonohue merged 1 commit into
DSpace:mainfrom
tdonohue:disable_flakey_test

Conversation

@tdonohue
Copy link
Copy Markdown
Member

@tdonohue tdonohue commented May 1, 2026

Description

This small PR is disabling the aria-required-children accessibility rule from running on the Item Edit page (in item-edit.cy.ts). This test always succeeds when run locally. However, when in our CI environment in GitHub, it is randomly failing approximately 1/3 of the time.

When the test fails, it returns this:

Edit Item > Edit Metadata tab
...
1 accessibility violation was detected
[
  {
    id: 'aria-required-children',
    impact: 'critical',
    description: 'Ensure elements with an ARIA role that require child roles contain them',
    helpUrl: 'https://dequeuniversity.com/rules/axe/4.11/aria-required-children?application=axeAPI',
    nodes: 1,
    html: [
      '<ul role="tablist" class="nav nav-tabs justify-content-start ng-tns-c1571227584-1 ng-star-inserted">'
    ]
  }
]

The failure is essentially saying that the role="tablist" element (displayed in the error) doesn't contain any role="tab" elements. However, our Tabs on that page all have the required role="tab" attribute and all appear as children of the role="tablist" element.

We've tried various workarounds (e.g. #5518) to attempt to wait for the page to fully load before running the accessibility scan. But, these fixes don't have any impact on the random failures of the aria-required-children rule on this page.

Therefore, this PR is disabling that aria-required-children rule only for this single e2e test. It is active in all other tests and on all other pages.

This PR should be backported to all active branches as all branches show the same flakey behavior in this test.

Instructions for Reviewers

  • This is only testable via GitHub CI. So, assuming that succeeds, this can be merged.

@tdonohue tdonohue added this to the 10.0 milestone May 1, 2026
@tdonohue tdonohue added code task 1 APPROVAL pull request only requires a single approval to merge labels May 1, 2026
@tdonohue tdonohue added testing framework Related specifically to Unit or Integration (e2e) Tests port to dspace-7_x This PR needs to be ported to `dspace-7_x` branch for next bug-fix release port to dspace-8_x This PR needs to be ported to `dspace-8_x` branch for next bug-fix release port to dspace-9_x This PR needs to be ported to `dspace-9_x` branch for next bug-fix release labels May 1, 2026
@tdonohue tdonohue moved this to 🙋 Needs Reviewers Assigned in DSpace 10.0 Release May 1, 2026
… page. This check is returning false failures more frequently.
@tdonohue tdonohue force-pushed the disable_flakey_test branch from 0a51123 to ac33454 Compare May 1, 2026 17:06
@tdonohue
Copy link
Copy Markdown
Member Author

tdonohue commented May 1, 2026

Merging immediately as this test has been problematic in our dependabot created PRs...only about 1/3 of them pass all tests the first time around, requiring them to be restarted (sometimes several times) before they eventually pass.

Will also port to all branches.

@tdonohue tdonohue merged commit 976810f into DSpace:main May 1, 2026
16 checks passed
@github-project-automation github-project-automation Bot moved this from 🙋 Needs Reviewers Assigned to ✅ Done in DSpace 10.0 Release May 1, 2026
@dspace-bot
Copy link
Copy Markdown
Contributor

@dspace-bot
Copy link
Copy Markdown
Contributor

@dspace-bot
Copy link
Copy Markdown
Contributor

@tdonohue tdonohue removed port to dspace-7_x This PR needs to be ported to `dspace-7_x` branch for next bug-fix release port to dspace-8_x This PR needs to be ported to `dspace-8_x` branch for next bug-fix release port to dspace-9_x This PR needs to be ported to `dspace-9_x` branch for next bug-fix release labels May 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1 APPROVAL pull request only requires a single approval to merge code task testing framework Related specifically to Unit or Integration (e2e) Tests

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

2 participants