by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 31 2019 20:13
    jkodu synchronize #1339
  • Jan 31 2019 20:13

    jkodu on core-preload-cssom-updates

    chore: update code owners with … feat(rule): Require unique aria… fix(i18n): Fix Japanese transla… and 6 more (compare)

  • Jan 31 2019 20:08
    jkodu synchronize #1339
  • Jan 31 2019 20:08

    jkodu on core-preload-cssom-updates

    test: update preload related te… (compare)

  • Jan 31 2019 18:54
    stephenmathieson commented #1343
  • Jan 31 2019 18:54
    stephenmathieson synchronize #1343
  • Jan 31 2019 18:54

    stephenmathieson on remove-grunt-lint

    chore: rerun prettier (#1340) Merge branch 'develop' into rem… (compare)

  • Jan 31 2019 16:53
    jkodu edited #1339
  • Jan 31 2019 16:52
    jkodu edited #1339
  • Jan 31 2019 16:50
    jkodu edited #1339
  • Jan 31 2019 16:49
    jkodu synchronize #1339
  • Jan 31 2019 16:49

    jkodu on core-preload-cssom-updates

    fix: update preload cssom to ca… (compare)

  • Jan 31 2019 16:20
    WilcoFiers closed #1342
  • Jan 31 2019 15:27
    tysonwolker starred dequelabs/axe-core
  • Jan 31 2019 10:27

    jkodu on chore-prettier

    (compare)

  • Jan 31 2019 10:27

    jkodu on develop

    chore: rerun prettier (#1340) (compare)

  • Jan 31 2019 10:27
    jkodu closed #1340
  • Jan 31 2019 09:27
    undeadinu starred dequelabs/axe-core
  • Jan 30 2019 19:05
    AdnoC review_requested #1344
  • Jan 30 2019 19:05
    AdnoC opened #1344
Steven Lambert
@straker
@alphabetkrish i believe the issue is that the context exlude is it's own argument rather than combined with the options argument:
axe.run({ exclude: [ excludeCSS ] }, { runOnly:  /****/ })
alphabetkrish
@alphabetkrish

@straker thanks much! i have tried that as well but ended up same result.
let a='.userName'
const options = { runOnly: { type: 'tag', values: ['wcag2a', 'wcag2aa'], reporter: "v2", xpath: true, elementRef: true } };
let results = browser.executeAsync((options, done) => {
axe.run({exclude:[a]}, {options}, function (err, results) {
if (err) throw err;
done(results);
});
}, options);

Error:Chrome 18.7.0 darwin #0-0] Evaluation failed: ReferenceError: a is not defined
at eval (eval at <anonymous> (:23:12), <anonymous>:5:19)
at eval (eval at <anonymous> (:23:12), <anonymous>:12:8)
at puppeteer_evaluation_script:23:12
at new Promise (<anonymous>)
at puppeteer_evaluation_script:2:10
[Chrome 18.7.0 darwin #0-0] Evaluation failed: ReferenceError: a is not defined
[Chrome 18.7.0 darwin #0-0] at eval (eval at <anonymous> (:23:12), <anonymo

Steven Lambert
@straker
i'm not sure what's going on from the code, but it looks like a problem with the setup code rather than axe-core (since it's a reference error to a on line 5 of the code)
are you trying to eval something?
alphabetkrish
@alphabetkrish
@straker I am not using eval but the same code works if i am using CSS locator hardcoded instead of a
for example - axe.run({exclude:['.username']}, {options}, function (err, results) { - working flawless
alphabetkrish
@alphabetkrish
@straker were you able to check it ?
Steven Lambert
@straker
it doesn't seem to be an issue with axe-core itself but in the complier or program your're using. something isn't getting the variables correclty so it thinks they don't exist (something to do with puppeteer by the stack trace)
David Dale
@davidadale
hello, new here and new to deque axe. I have a Selenium Java application that uses the Axe class to collect violations on a page. I read that it should be possible to get a pretty HTML report but I am not seeing how this can be done. Any help would be greatly appreciated.
Naseem Ahmed
@naseem6270_twitter
Hey Team, In the report, I am getting tags like wcag412,wcag311... So which rules do they belong to? WCAG 2.0 A, AA or 2.1 A, AA ?? Please let me know
Steven Lambert
@straker

@naseem6270_twitter The tags should also list which WCAG gorup they belong to. For example, the meta-refresh rule uses tags:
"cat.time-and-media",
"wcag2a",
"wcag2aaa",
"wcag221",
"wcag224",
"wcag325"

so its success criteron is 2.2.1, 2.2.4, and 3.2.5 and belongs to the group 2.0A and 2.0AAA

Benjamin Myhre
@bemyhre
image.png

I was running the accessibility reporting in Chrome and it was throwing a "Form elements must have labels" error on the following select element

<form action="https://ramshacklepantry.com" method="get" target="_self">
  <input type="hidden" name="customize_messenger_channel" value="preview-14">
  <input type="hidden" name="customize_autosaved" value="on">
  <input type="hidden" name="customize_changeset_uuid" value="f511e711-c26a-4893-a695-19167213b5ad">
  <label class="screen-reader-text" for="cat">Check it Out:</label>
  <select name="cat" id="cat" class="postform">
    <option value="-1">Select Category</option>
    <option class="level-0" value="221">Appetizer</option>
    <option class="level-0" value="109">Apple Pie</option>
        ... a bunch more options...
</select>
</form>

It appears that there is a label and I would not expect this to be an error, as there is a label that points to the select element. Originally, it was displaying in Chrome's built in Lighthouse reporting. I went in to Chrome Lighthouse's github to submit an issue and as a default they have '<!-- Before creating an Accessibility issue please test that it is reproducible upstream with axe (https://www.deque.com/axe/) first and file the issue there if necessary. -->'. I installed your chrome plugin and reproduced the issue with the axe extention. The Chrome extension install page led me here.

Also, hi. :)

Naseem Ahmed
@naseem6270_twitter

@naseem6270_twitter The tags should also list which WCAG gorup they belong to. For example, the meta-refresh rule uses tags:
"cat.time-and-media",
"wcag2a",
"wcag2aaa",
"wcag221",
"wcag224",
"wcag325"

so its success criteron is 2.2.1, 2.2.4, and 3.2.5 and belongs to the group 2.0A and 2.0AAA

Thank you ...

Naseem Ahmed
@naseem6270_twitter

Hi Team.... I have just started using Axe-Core with Java as the programming language and was able to run it successfully for couple of pages. In one of the page, I am getting an error "org.openqa.selenium.JavascriptException: javascript error: eval is disabled"

Any solution for this? Am I doing anything incorrect? Please let me know. Thanks

10 replies
Perry Trinier
@ptrin_twitter
Is there any (maybe undocumented) way to get debug output from axe-core? I'm using via cypress-axe and it's working fine on most elements within the page I'm testing, but there's a particular element that it doesn't run successfully (or at all) on. As far as Cypress is concerned, the element is visible.
Code sample:
    cy.get('.vf-tray').should('be.visible'); // this passes
    cy.checkA11y( // this doesn't run, but runs perfectly in other elements on the page
      '.vf-tray',
      {},
      function (violations) {
        cy.downloadObjectAsJson(violations, this.test.title);
      },
      true,
    );
1 reply
malveujvala
@malveujvala
Hi Team, I am using the Axe-Core with Java integration and currently facing the issue which is mentioned in dequelabs/react-axe#54. I commented on that issue as well. Is there any workaround to fix this issue with Java? I can't update the Maven dependency to 3.5 so what should I do. Please suggest.
Steven Lambert
@straker
@bemyhre I'm not able to duplicate the violation with just the code snippet provided using axe 3.5.2
Kilian Valkhof
@Kilian
Hey everyone! I want to use axe-core to "manually" check the color contrast, but using the axe.commons.color.getBackgroundColor() function directly gives all sorts of errors depending on which parts of _cache are and aren't available. Is there documentation somewhere on how to correctly prep axe before using the commons functions?
Steven Lambert
@straker
@Kilian commons aren't suppose to be used outside of a run. you can run axe using a single rule so it works:
axe.run({ runOnly: ['color-contrast'] })
Kilian Valkhof
@Kilian
Ah, okay. I want to specifically annotate all elements. I'll see if the single-rule run is fast enough!
nitinWFH
@nitinWFH
hi
how can i use axe-core to crawl inner pages and run the rules
that also should run on multiple browsers
any suggestion will help me
Steven Lambert
@straker
@nitinWFH I'm not sure what you are asking exactly. What do you mean by inner pages? Axe can run in any supported browser https://github.com/dequelabs/axe-core/blob/develop/doc/accessibility-supported.md#accessibility-supported
tobiswajitdas
@tobiswajitdas
We are using axe-selenium library and seeing some issues running with mobile web. Does axe-core work same way in web and mobile web?
Adam Cutler
@AdnoC
What sort of issues @tobiswajitdas ?
tobiswajitdas
@tobiswajitdas
@AdnoC thank you for your response. Sending you an email with error details
tobiswajitdas
@tobiswajitdas
@AdnoC - following up if you got a chance to look at the email.
Akash Dhanagundi
@akashmdkml

Would like to know the communicy view on this issue, please provide your inputs, Thanks

Duplicate id issue:
As per the w3c standard the content wrapped inside area-hidden="true" will not be readable by screen readers, The axe mark the following code as duplicate Id but the google lighthouse does not mark this issue because the google will identify duplicate id by aria-labelledby, so the lighthouse finds duplicate Id's only which is readable by the screen. (https://web.dev/duplicate-id-aria/#how-to-fix-duplicate-ids)

```<div id="duplicate-id">Test Duplicate ID</div>

        <div>some SVG
            <svg aria-hidden="true" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg" stroke="red" fill="grey">
            <circle id="duplicate-id" cx="50" cy="50" r="40" />
            </svg>
        </div>```
Dylan Barrell
@dylanb
@akashmdkml screen readers are not the only assistive technologies. Technologies like Dragon also use the IDs to target elements and having duplicate IDs can cause the wrong content to get targeted.
Akash Dhanagundi
@akashmdkml
@dylanb yup! make sense, thank you for your suggestions.
Kyrsten Kelly
@kyrstenkelly
Hey there! I am seeing a really big difference in the number of violations found when I run Axe in Chrome vs in Firefox. Is this a known issue? On the same page, Axe in Firefox finds 31 violations while running it in Chrome only finds 14.
Steven Lambert
@straker
@kyrstenkelly axe should return the same number of violations on the same page. are you able to share the page so I could look into it?
Kyrsten Kelly
@kyrstenkelly
@straker The initial page I was looking at is behind a login, however the issue is also happening on our login page :) https://auth.udacity.com/sign-up
image.png
That's what I see in Chrome (left) vs Firefox (right) for the login page
Steven Lambert
@straker
in looks like in chrome you've selected just the Violations from the dropdown (total of 13) while in Firefox All Issues are selected (total of 26)
Kyrsten Kelly
@kyrstenkelly
facepalm Oh man.
Thank you Steven! Can't believe I didn't notice that.
Steven Lambert
@straker
No problem! Let us know if you have any futher issues
Aaron Sanders
@SandersAaronD
Hey, I was poking around because I wanted to experiment with a feature add and I found a bunch of dead links in the docs, is anyone going to mind if I put in a PR to fix them?
Steven Lambert
@straker
@SandersAaronD prs are always welcome! Which docs did you find the dead links in?
YaJiv
@namvjsai
Hey, I noticed that the axe-core used on the axe-selenium-java(https://github.com/dequelabs/axe-selenium-java/blob/master/src/test/resources/axe.min.js) is v3.1.2 while the latest axe-core is v3.5.5 - Can anybody suggest if it is okay to have v3.5.5 axe.min.js in my project?
Also, would be interested to know if the upgrading even matters. Thank you very much
Adam Cutler
@AdnoC
That file is just used in testing @namvjsai, you're free to use whatever axe-core version you want
1 reply
bangadsandeep
@bangadsandeep

elementRef: true does not provides locator information for violations of webpage.

I am using Java with axe-selenium 3.0 and below is the options Json

String options = "{ runOptions: { type: 'tag', values: ['wcag2a', 'wcag2aa'], elementRef: true } }";
responseJSON = builder.options(options)
.analyze();

On a side note :- when debug it provides the locators information but not in run mode

amansikarwar13
@amansikarwar13
Hi Everyone,
not able to get any document related to axe automation using Selenium WebDriver (JAVA)
bangadsandeep
@bangadsandeep
@amansikarwar13 - https://github.com/dequelabs/axe-selenium-java. As well once i am done with resolving the above issue I can share document with you.
amansikarwar13
@amansikarwar13
Thank You Sandeep