Clarify arguments to `axe.run()`
Opened this issue · 1 comments
dvarrazzo commented
Looking at the code, it seems that axe.run() takes arguments as strings representing Javascript objects:
This is a surprising interface for a Python object, and I can't find it documented anywhere, or exercised in the unit test. What is the correct way of specifying Axe the following options?
{"runOnly": {"type": "tag", "value": ["wcaga2a"]}}Maybe you need:
- an example to show the correct way to call the function
- if the objects are not strings then
json.dumps()them
or maybe I'm reading all wrong?
ajaysuwalka commented
I was also searching for the same and at last found out that you can set them the same way, how they are set in the js like
axe = Axe(driver)
# Inject axe-core javascript into page.
axe.inject()
# Run axe accessibility checks.
results = axe.run(options={
"runOnly": {
"type": 'rule',
"values": ['area-alt', 'aria-allowed-attr','color-contrast', 'valid-lang']
}
})
# Assert no violations are found
assert len(results["violations"]) == 0, axe.report(results["violations"])
This object can be anything like the examples mentioned #here