使用 Chrome DevTools 協定
ChromeDriver 和 EdgeDriver 都公開了一些特定指令,用於與各自的瀏覽器互動。
當使用 ChromeDriver 或 EdgeDriver 時,現在可以透過 Chrome DevTools 協定執行指令。
以下是 browser
物件上 .chrome
命名空間中可用的完整指令列表
browser.chrome
- .launchApp()
- .getNetworkConditions()
- .setNetworkConditions()
- .sendDevToolsCommand()
- .sendAndGetDevToolsCommand()
- .setPermission()
- .setDownloadPath()
- .getCastSinks()
- .setCastSinkToUse()
- .startCastTabMirroring()
- .getCastIssueMessage()
- .stopCasting()
更多資訊
- selenium-webdriver/chromium (類別 Driver)
- selenium-webdriver/chrome (類別 Driver)
- selenium-webdriver/edge (類別 Driver)
範例
describe('Chrome DevTools Example', function() {
it ('using CDP DOM Snapshot', async function() {
const dom = await browser.chrome.sendAndGetDevToolsCommand('DOMSnapshot.captureSnapshot', {
computedStyles: []
});
console.log('DOM', dom)
});
});