sitespeedio / sitespeedio/sitespeed.io

How do I have Axe.core run only on the first iteration of s SiteSpeed test?

Open
#4,481 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request
Dominant language
JavaScript
Stars
5k
Forks
624
Avg merge
4h 8m
Merged PRs (30d)
2

Description

I run a suite of SiteSpeed tests regularly, and the Axe.Core tests are crucial for gathering information. However, since these tests take a long time and their results don't vary between iterations, I want to run them only during the first iteration.

Attempts:

1. Setting the enabled flag in PreScript and PostScript:

if (context.index === 1) {
    context.options.axe = { enable: true, tags: "wcag22aa" };
} else {
    context.options.axe = { enable: false };
}

This approach didn't work because the Axe tests run before the PostScript and seemed to have no effect on whether the test runs or not in the prescript.

2. Using the code with and without the --axe.enable flag in the Docker command:

If --axe.enable isn't included in the Docker command, the Axe tests don't run at all, regardless of the PreScript settings.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the reported behavior with the PreScript/PostScript snippets and the Docker command options in the issue. Trace when Axe.Core runs relative to iteration scripts and define completion as running Axe only during the first iteration while preserving its results.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, javascript
Domain
performance, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.