鶴壁人民醫(yī)院網(wǎng)站誰(shuí)做的百度小說(shuō)搜索熱度排行榜
Puppeteer 支持的瀏覽器版本映射:從 v20.0.0 到 v23.6.0
自 Puppeteer v20.0.0 起,這個(gè)強(qiáng)大的自動(dòng)化庫(kù)開(kāi)始支持與 Chrome 瀏覽器的無(wú)頭模式和有頭模式共享相同代碼路徑,為自動(dòng)化測(cè)試帶來(lái)了更多便利。從 v23.0.0 開(kāi)始,Puppeteer 進(jìn)一步擴(kuò)展了其支持范圍,包括了 Firefox 瀏覽器的穩(wěn)定版本。在本文中,我們將詳細(xì)探討 Puppeteer 支持的瀏覽器版本,以及如何確保你的自動(dòng)化測(cè)試環(huán)境與這些瀏覽器兼容。
Puppeteer 的瀏覽器支持歷史
Puppeteer 的發(fā)展歷程中,對(duì)不同瀏覽器的支持情況如下:
- v20.0.0 之前:Puppeteer 主要與 Chromium 瀏覽器一起使用。
- v20.0.0 起:開(kāi)始支持 Chrome 瀏覽器的無(wú)頭模式和有頭模式。
- v23.0.0 起:增加了對(duì) Firefox 瀏覽器穩(wěn)定版本的支持。
支持的瀏覽器版本映射
以下是 Puppeteer 版本與對(duì)應(yīng)的支持瀏覽器版本映射表,幫助你選擇合適的 Puppeteer 版本以適配特定的瀏覽器:
Puppeteer 版本 | Chrome 版本 | Firefox 版本 |
---|---|---|
v23.6.0 | 130.0.6723.58 | 131.0.3 |
v23.5.3 | 129.0.6668.100 | 131.0.2 |
v23.5.2 | 129.0.6668.91 | 131.0 |
v23.5.0 | 129.0.6668.89 | 131.0 |
v23.4.1 | 129.0.6668.70 | 130.0.1 |
v23.4.0 | 129.0.6668.58 | 130.0.1 |
… | … | … |
v20.0.0 | 112.0.5615.121 | Firefox Nightly |
CLI命令和配置信息
你提供的CLI命令和配置信息是為了管理和配置Puppeteer在項(xiàng)目中的行為。下面是解釋和如何執(zhí)行這些步驟的詳細(xì)說(shuō)明:
1. 運(yùn)行CLI以下載新配置:
如果你想要為你的項(xiàng)目下載和管理瀏覽器配置,可以使用以下命令:
- 對(duì)于紗(Yarn)項(xiàng)目:
yarn add puppeteer
- 對(duì)于PNPM項(xiàng)目:
pnpm add puppeteer
- 使用
npx
來(lái)安裝并運(yùn)行Puppeteer的瀏覽器安裝腳本:npx puppeteer browsers install
這個(gè)命令會(huì)下載并安裝Puppeteer依賴的瀏覽器(例如Chromium)。
2. 更改默認(rèn)緩存位置:
從Puppeteer版本19.0.0開(kāi)始,默認(rèn)情況下,Puppeteer會(huì)將下載的瀏覽器存儲(chǔ)在全局緩存目錄~/.cache/puppeteer
中。如果你需要更改這個(gè)默認(rèn)行為,可以在你的項(xiàng)目目錄下創(chuàng)建一個(gè).puppeteerrc.cjs
配置文件。
下面是如何創(chuàng)建和配置.puppeteerrc.cjs
文件:
- 在你的項(xiàng)目根目錄下創(chuàng)建一個(gè)名為
.puppeteerrc.cjs
的文件。 - 將以下內(nèi)容復(fù)制并粘貼到該文件中:
const { join } = require('path');
/*** @type {import("puppeteer").Configuration}*/
module.exports = {// Changes the cache location for Puppeteer.cacheDirectory: join(__dirname, '.cache', 'puppeteer'),
};
這個(gè)配置文件將Puppeteer的緩存目錄更改為你項(xiàng)目目錄下的.cache/puppeteer
。
- 確保你的項(xiàng)目使用的是CommonJS模塊系統(tǒng),因此文件擴(kuò)展名是
.cjs
。 - 如果你使用的是ES模塊,那么文件名應(yīng)該是
.puppeteerrc.js
,并且你需要使用export
關(guān)鍵字而不是module.exports
。
完成這些步驟后,當(dāng)你再次安裝Puppeteer或者運(yùn)行相關(guān)的腳本時(shí),它將使用你指定的緩存目錄。這有助于避免在不同構(gòu)建環(huán)境中可能出現(xiàn)的緩存問(wèn)題。
確保 Puppeteer 與瀏覽器版本的兼容性
確保 Puppeteer 與瀏覽器版本的兼容性是進(jìn)行自動(dòng)化測(cè)試時(shí)的一個(gè)重要考慮因素。以下是一些步驟和建議,幫助你確保 Puppeteer 腳本能夠在不同版本的瀏覽器上正常運(yùn)行:
-
檢查瀏覽器兼容性:
定期查看 Puppeteer 的官方文檔,了解其支持的瀏覽器版本。Puppeteer 通常會(huì)支持最新的穩(wěn)定版本的 Chromium 和 Firefox。 -
使用最新版本的 Puppeteer:
保持 Puppeteer 更新到最新版本,這樣可以確保你使用的是與最新瀏覽器版本兼容的 Puppeteer。 -
測(cè)試前的瀏覽器檢查:
在腳本開(kāi)始時(shí),檢查瀏覽器的版本信息,確保它在 Puppeteer 支持的范圍內(nèi)。如果版本不兼容,可以提醒用戶更新瀏覽器或使用其他支持的版本。const puppeteer = require('puppeteer');(async () => {const browser = await puppeteer.launch();const browserVersion = await browser.version();console.log(`Browser version: ${browserVersion}`);// 可以添加邏輯來(lái)檢查版本并做出相應(yīng)的處理await browser.close(); })();
-
使用特性檢測(cè):
在你的 Puppeteer 腳本中,使用特性檢測(cè)來(lái)確定當(dāng)前瀏覽器是否支持某個(gè)特定的 API 或功能。這可以避免在不支持的瀏覽器上運(yùn)行時(shí)出現(xiàn)錯(cuò)誤。 -
使用無(wú)頭模式的兼容性選項(xiàng):
當(dāng)使用無(wú)頭模式時(shí),可以通過(guò)設(shè)置args
參數(shù)來(lái)指定一些兼容性選項(xiàng),例如模擬不同的用戶代理或其他啟動(dòng)參數(shù)。 -
跨瀏覽器測(cè)試:
使用跨瀏覽器測(cè)試服務(wù),如 BrowserStack 或 Sauce Labs,這些服務(wù)提供了不同瀏覽器和操作系統(tǒng)的測(cè)試環(huán)境。 -
監(jiān)聽(tīng)和處理錯(cuò)誤:
在你的 Puppeteer 腳本中添加錯(cuò)誤處理邏輯,以便在出現(xiàn)兼容性問(wèn)題時(shí)能夠優(yōu)雅地處理。 -
保持代碼的靈活性:
編寫靈活的代碼,以便在不同的瀏覽器版本之間進(jìn)行切換時(shí),可以快速適應(yīng)。 -
使用功能標(biāo)志:
對(duì)于某些實(shí)驗(yàn)性或版本特定的功能,使用功能標(biāo)志來(lái)控制這些功能的啟用和禁用。 -
編寫可維護(hù)的代碼:
編寫清晰、模塊化的代碼,這樣在瀏覽器更新后,你可以更容易地更新和維護(hù)你的 Puppeteer 腳本。 -
監(jiān)控社區(qū)動(dòng)態(tài):
關(guān)注 Puppeteer 和瀏覽器開(kāi)發(fā)者社區(qū)的動(dòng)態(tài),了解即將到來(lái)的更改和潛在的兼容性問(wèn)題。 -
自動(dòng)化測(cè)試:
設(shè)置自動(dòng)化測(cè)試管道,定期運(yùn)行你的 Puppeteer 腳本,確保在瀏覽器更新后腳本仍然能夠正常工作。
通過(guò)遵循上述步驟,你可以最大限度地確保你的 Puppeteer 腳本與不同版本的瀏覽器兼容,從而提高測(cè)試的穩(wěn)定性和可靠性。
注意事項(xiàng)
- 如果未列出完全匹配的 Puppeteer 版本,則支持的瀏覽器版本為前一個(gè)版本。
- 在進(jìn)行自動(dòng)化測(cè)試時(shí),確保測(cè)試環(huán)境的瀏覽器版本與 Puppeteer 版本兼容。
- 對(duì)于生產(chǎn)環(huán)境,如果涉及到實(shí)際的貨幣交易,需要特別注意支付流程的測(cè)試,以避免潛在的風(fēng)險(xiǎn)。
結(jié)語(yǔ)
隨著 Puppeteer 的不斷更新,它在瀏覽器自動(dòng)化領(lǐng)域的應(yīng)用越來(lái)越廣泛。了解并選擇合適的 Puppeteer 版本,以確保你的自動(dòng)化測(cè)試能夠順利運(yùn)行在支持的瀏覽器上,對(duì)于提高測(cè)試效率和準(zhǔn)確性至關(guān)重要。通過(guò)上述版本映射表,你可以輕松地為你的自動(dòng)化測(cè)試選擇合適的 Puppeteer 和瀏覽器版本。