ConfigurationOverrides Class
Override global axe accessibility testing configuration settings in your Java Selenium tests
The ConfigurationOverrides
class allows you to override axe configuration global settings for accessibility testing with axe Watcher. You can use this class to customize accessibility standards, enable best practices and experimental rules, and specify the axe-core version to use during testing.
These overrides take precedence over the global configuration settings defined in your axe Account.
Constructor
ConfigurationOverrides()
Creates a new instance of ConfigurationOverrides
with default settings (all properties set to null
).
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
Methods
setEnableBestPractices(boolean enableBestPractices)
Enables or disables best practice rules during accessibility testing. Best practice rules identify issues that aren't strictly required by accessibility standards but can improve user experience.
Parameters:
enableBestPractices
- Boolean value indicating whether to enable best practice rules
Returns:
ConfigurationOverrides
- The current instance for method chaining
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setEnableBestPractices(true);
setEnableExperimental(boolean enableExperimental)
Enables or disables experimental rules during accessibility testing. Experimental rules are new or unstable rules that are still being developed.
Parameters:
enableExperimental
- Boolean value indicating whether to enable experimental rules
Returns:
ConfigurationOverrides
- The current instance for method chaining
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setEnableExperimental(false);
setAccessibilityStandard(AccessibilityStandard standard)
Sets the accessibility standard to use for testing. This determines which set of accessibility rules are applied during testing.
Parameters:
standard
- AnAccessibilityStandard
enum value that specifies the standard to use
Returns:
ConfigurationOverrides
- The current instance for method chaining
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setAccessibilityStandard(ConfigurationOverrides.AccessibilityStandard.WCAG22AA);
setAxeCoreVersion(String axeCoreVersion)
Sets the version of axe-core to use for testing. This allows you to specify a specific version or use the latest version.
Parameters:
axeCoreVersion
- The version string of axe-core to use (e.g., "4.6.0" or "latest")
Returns:
ConfigurationOverrides
- The current instance for method chaining
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setAxeCoreVersion("4.7.0");
getEnableBestPractices()
Gets the current setting for enabling best practice rules.
Returns:
Boolean
- The current setting for enabling best practice rules
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setEnableBestPractices(true);
Boolean enableBestPractices = configOverrides.getEnableBestPractices(); // Returns true
getEnableExperimental()
Gets the current setting for enabling experimental rules.
Returns:
Boolean
- The current setting for enabling experimental rules
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setEnableExperimental(false);
Boolean enableExperimental = configOverrides.getEnableExperimental(); // Returns false
getAccessibilityStandard()
Gets the current accessibility standard setting.
Returns:
String
- The current accessibility standard setting
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setAccessibilityStandard(ConfigurationOverrides.AccessibilityStandard.WCAG21AA);
String standard = configOverrides.getAccessibilityStandard(); // Returns "WCAG 2.1 AA"
getAxeCoreVersion()
Gets the current axe-core version setting.
Returns:
String
- The current axe-core version setting
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
configOverrides.setAxeCoreVersion("4.7.0");
String version = configOverrides.getAxeCoreVersion(); // Returns "4.7.0"
toJson()
Serializes the ConfigurationOverrides
instance to a JSON string.
Returns:
String
- A JSON string representation of the configuration overrides
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides()
.setEnableBestPractices(true)
.setAccessibilityStandard(ConfigurationOverrides.AccessibilityStandard.WCAG22AA);
String json = configOverrides.toJson();
// Returns: {"best_practices":true,"experimental_rules":null,"accessibility_standard":"WCAG 2.2 AA","axe_core_version":null}
AccessibilityStandard Enum
The ConfigurationOverrides
class includes an AccessibilityStandard
enum that defines the available accessibility standards:
Enum Values
WCAG2A
- WCAG 2.0 Level AWCAG2AA
- WCAG 2.0 Level AAWCAG2AAA
- WCAG 2.0 Level AAAWCAG21A
- WCAG 2.1 Level AWCAG21AA
- WCAG 2.1 Level AAWCAG21AAA
- WCAG 2.1 Level AAAWCAG22A
- WCAG 2.2 Level AWCAG22AA
- WCAG 2.2 Level AAWCAG22AAA
- WCAG 2.2 Level AAATTV5
- Trusted Tester v5EN301549
- EN 301 549ALL
- All standards
Example:
ConfigurationOverrides configOverrides = new ConfigurationOverrides();
// Set to WCAG 2.2 Level AA
configOverrides.setAccessibilityStandard(ConfigurationOverrides.AccessibilityStandard.WCAG22AA);
// Set to Trusted Tester v5
configOverrides.setAccessibilityStandard(ConfigurationOverrides.AccessibilityStandard.TTV5);
// Set to all standards
configOverrides.setAccessibilityStandard(ConfigurationOverrides.AccessibilityStandard.ALL);
Important Notes
-
Mutually Exclusive Settings: You cannot use both
configurationOverrides.accessibilityStandard
andrunOptions.runOnly
at the same time. -
Null Properties: All properties in
ConfigurationOverrides
default tonull
. When a property isnull
, the global configuration from axe Developer Hub is used instead. -
Precedence: Configuration overrides take precedence over global settings in your axe account, allowing you to customize testing for specific test suites or runs.
-
Serialization: The
toJson()
method includes null values in the output, making the JSON structure consistent regardless of which properties are set.