Webdriverio: Apakah ada cara untuk menambahkan ekstensi ke chrome di webdriverio?

Dibuat pada 2 Apr 2015  ·  4Komentar  ·  Sumber: webdriverio/webdriverio

Sebenarnya, saya perlu membuka halaman dengan ekstensi yang diinstal di browser apa pun (tidak secara khusus chrome). Jadi itu bisa berupa firefox, atau phantomjs (tidak yakin apakah itu mungkin sama sekali).

Jadi, apakah ada cara untuk menjalankan chrome/firefox/phantom melalui webdriverio dengan ekstensi yang sudah diinstal sebelumnya, dan jika ada - bagaimana saya bisa melakukannya?

Terima kasih sebelumnya!

Komentar yang paling membantu

ya, itu berhasil

var data = await fs.readFileSync('./ext.zip');
options.desiredCapabilities.chromeOptions.extensions = [data.toString('base64')];

Semua 4 komentar

Ya ada! Anda dapat memiliki properti chromeOptions di Kemampuan yang Anda inginkan. Objek ini memiliki properti bernama extensions yang mengambil string base64 dari file crx . Anda akan menemukan informasi lebih lanjut https://sites.google.com/a/chromium.org/chromedriver/capabilities

ya, itu berhasil

var data = await fs.readFileSync('./ext.zip');
options.desiredCapabilities.chromeOptions.extensions = [data.toString('base64')];

Halo! Terima kasih telah berbagi pendekatan Anda!
@ d668 Mungkin Anda memiliki masalah serupa saat bekerja menambahkan ekstensi ke pengujian Anda??
Saya mencoba menambahkan ekstensi, dan setelah menjalankan tes,
Saya mendapat kesalahan:
ERROR webdriver: Request failed due to unknown error: unknown error: cannot process extension #1 from unknown error: cannot read manifest

 maxInstances: 5,
        "goog:chromeOptions": {
            extensions: [(function () {
                try {
                    const webExt = fs.readFileSync('./extension.zip').toString('base64');
                    return webExt;
                } catch (e) {
                    console.log(e, 'An error occurred while to parse extension zip file!');
                }
            })()],
            args: ['--headless', '--disable-gpu']
        },

@Madebyspeedster Anda perlu mengemas ekstensi. Buka chrome://extensions dan klik Pack extension. Ini akan menghasilkan paket .crx dan kunci .pem. Setelah itu Anda dapat menggunakan kunci .pem untuk membuat paket untuk Anda sendiri. Anda dapat menggunakan perpustakaan ini untuk itu https://github.com/Constellation/crxmake

Apakah halaman ini membantu?
0 / 5 - 0 peringkat