Gebruik Chrome voor Testing of Chromium met Axe Watcher

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Hoe Chrome voor Testing of Chromium te installeren en configureren voor platforms die verbinding maken met een systeem-geïnstalleerde browser

Not for use with personal data

Axe Watcher ondersteunt alleen Google Chrome voor Testing of Chromium. Reguliere Chrome versie 139 en later worden niet ondersteund.

Testplatforms die hun eigen browserinstallatie beheren (zoals Playwright en Puppeteer) worden niet beïnvloed; zij downloaden automatisch een compatibele versie van Chromium. Platforms die verbinding maken met een al op de machine geïnstalleerde browser (zoals WebdriverIO, WebDriverJS en Java Selenium) vereisen dat u Chrome voor Testing of Chromium installeert en het pad ervan expliciet configureert.

Installeer Chrome voor Testing of Chromium

Kies een van de volgende installatiemethoden:

  • Gebruik van npm: @puppeteer/browsers is een zelfstandige browser downloadtool; het vereist niet dat Puppeteer in uw project is geïnstalleerd. Om Chrome voor Testing te installeren, voer uit:

    npx @puppeteer/browsers install chrome@stable

    Om Chromium in plaats daarvan te installeren, voer uit:

    npx @puppeteer/browsers install chromium@latest

    Het commando geeft aan het einde van de uitvoer het pad naar de geïnstalleerde binary weer, bijvoorbeeld:

    chrome@stable /home/user/.cache/puppeteer/chrome/linux-136.0.7103.92/chrome-linux64/chrome

    Stel de CHROME_PATH omgevingsvariabele in op dat pad voordat u uw tests uitvoert.

    important

    @puppeteer/browsers install downloadt de browser in een subdirectory van de huidige werkdirectory. Voer het commando uit vanaf een locatie waar een grote download geschikt is, en overweeg de resulterende directory toe te voegen aan uw .gitignore.

  • Gebruik van GitHub Actions: Voeg de volgende stap toe aan uw workflow-bestand. Om Chrome voor Testing te installeren:

    - name: Setup Chrome for Testing
      uses: browser-actions/setup-chrome@latest
      id: setup-chrome
      with:
        chrome-version: stable
        install-chromedriver: true

    Om Chromium in plaats daarvan te installeren, gebruik latest voor chrome-version:

    - name: Setup Chromium
      uses: browser-actions/setup-chrome@latest
      id: setup-chrome
      with:
        chrome-version: latest
        install-chromedriver: true

    In beide gevallen is het binary pad beschikbaar vanuit de uitvoer van de stap:

    ${{ steps.setup-chrome.outputs.chrome-path }}

Configureer Uw Platform

Zodra CHROME_PATH is ingesteld, configureert u uw testopstelling als volgt.

WebdriverIO

Geef het binary pad door binnen goog:chromeOptions in uw WebdriverIO-mogelijkheden.

Voor het standalone pakket (wdioConfig()):

const browser = await remote(
  wdioConfig({
    axe: {
      apiKey: ACCESSIBILITY_API_KEY,
      projectId: PROJECT_ID
    },
    capabilities: {
      browserName: 'chrome',
      'goog:chromeOptions': {
        binary: process.env.CHROME_PATH
      }
    }
  })
)

Voor WDIO Testrunner (wdioTestRunner()):

export const config = wdioTestRunner({
  axe: {
    apiKey: ACCESSIBILITY_API_KEY,
    projectId: PROJECT_ID
  }
}, {
  capabilities: [{
    browserName: 'chrome',
    'goog:chromeOptions': {
      binary: process.env.CHROME_PATH
    }
  }]
})

WebDriverJS

Roep eerst webdriverConfig() aan om het Chrome-optieobject te krijgen, stel vervolgens het binary pad in voordat u de browser bouwt:

const chromeOptions = webdriverConfig({
  axe: {
    apiKey: ACCESSIBILITY_API_KEY,
    projectId: PROJECT_ID
  }
})
chromeOptions.setBinaryPath(process.env.CHROME_PATH)

const browser = await new Builder()
  .forBrowser('chrome')
  .setChromeOptions(chromeOptions)
  .build()

Java Selenium

Stel het binary pad in op ChromeOptions voordat u watcher.configure():

AxeWatcherOptions options =
    new AxeWatcherOptions()
        .setApiKey(System.getenv("ACCESSIBILITY_API_KEY"))
        .setProjectId(System.getenv("PROJECT_ID"));
AxeWatcher watcher = new AxeWatcher(options);
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.setBinary(System.getenv("CHROME_PATH"));
chromeOptions = watcher.configure(chromeOptions);
WebDriver wrappedDriver = watcher.wrapDriver(new ChromeDriver(chromeOptions));