📚 查看原文

    使用 Chrome 扩展程序

    Puppeteer 可以用来测试 Chrome 扩展

    注意 Chrome / Chromium 扩展当前只能在非无头模式下使用。

    下面的代码用来处理扩展的 background page,该扩展的代码在 ./my-extension:

    1. const puppeteer = require('puppeteer');
    2. (async () => {
    3. const pathToExtension = require('path').join(__dirname, 'my-extension');
    4. const browser = puppeteer.launch({
    5. headless: false,
    6. args: [
    7. `--disable-extensions-except=${pathToExtension}`,
    8. `--load-extension=${pathToExtension}`
    9. ]
    10. });
    11. const targets = await browser.targets();
    12. const backgroundPageTarget = targets.find(target => target.type() === 'background_page');
    13. const backgroundPage = await backgroundPageTarget.page();
    14. // 像处理任何其他页面一样测试背景页面。
    15. await browser.close();
    16. })();

    注意 目前还无法测试扩展弹出窗口或内容脚本。