首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Windows 7上使用Axe辅助工具运行node js脚本时遇到问题。

在Windows 7上使用Axe辅助工具运行node js脚本时遇到问题。
EN

Stack Overflow用户
提问于 2018-08-16 02:50:14
回答 2查看 533关注 0票数 3

我正在运行从https://www.npmjs.com/package/axe-reports找到的这个脚本,为Axe辅助工具创建人类可读的报告。我正在运行示例:

代码语言:javascript
运行
复制
var AxeBuilder = require('axe-webdriverjs'),
    AxeReports = require('axe-reports'),
    webdriver = require('selenium-webdriver'),
    By = webdriver.By,
    until = webdriver.until;

var driver = new webdriver.Builder()
    .forBrowser('chrome') //or firefox or whichever driver you use
    .build();

var AXE_BUILDER = AxeBuilder(driver)
    .withTags(['wcag2a', 'wcag2aa']); // specify your test criteria (see aXe documentation for more info)

AxeReports.createCsvReportHeaderRow();
driver.get('https://www.google.com');
driver.wait(until.titleIs('Google'), 1000)
    .then(function () {
        AXE_BUILDER.analyze(function (results) {
            AxeReports.createCsvReportRow(results);
        });
    });
driver.get('https://www.bing.com');
driver.wait(until.titleIs('Bing'), 1000)
    .then(function () {
        AXE_BUILDER.analyze(function (results) {
            AxeReports.createCsvReportRow(results);
        });
    });
driver.quit();

这是我得到的错误:

Command prompt error message

EN

回答 2

Stack Overflow用户

发布于 2018-09-20 22:28:48

试试这个:

代码语言:javascript
运行
复制
var selenium = require("selenium-webdriver"),
  AxeBuilder = require("axe-webdriverjs"),
  AxeReports = require("axe-reports");

describe("Accessibility", function() {
  var driver;

  beforeEach(function(done) {
    driver = new selenium.Builder().forBrowser("chrome").build();

    driver.get("https://www.google.com").then(function() {
      done();
    });
  });

  // Close website after each test is run (so it is opened fresh each time)
  afterEach(function(done) {
    driver.quit().then(function() {
      done();
    });
  });

  it("should analyze the page with aXe", function(done) {
    AxeBuilder(driver).analyze(function(results) {
      console.log(
        "Accessibility Violations stored in aXe-test-results, # of violations: ",
        results.violations.length
      );
      if (results.violations.length > 0) {
        AxeReports.processResults(results, "csv", "aXe-test-results", true);
      }
      expect(results.violations.length).toBe(0);
      done();
    });
  });
});
票数 0
EN

Stack Overflow用户

发布于 2020-07-09 13:37:40

您可以使用axe-playwright。此包包含您可以直接使用的包装器功能。

  • 添加库作为依赖项:

代码语言:javascript
运行
复制
npm i -D axe-playwright

在正确的page上下文中插入

  • axe

代码语言:javascript
运行
复制
beforeAll(async () => {
  browser = await chromium.launch();
  page = await browser.newPage();
  await page.goto(`http://localhost:3000/login`);
  await injectAxe(page);
});

  • 使用Playwright

执行自定义命令以扫描辅助功能

代码语言:javascript
运行
复制
it('simple accessibility run', async () => {
    await checkA11y(page);
  });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51864691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档