Revert " feat(webdriver): support Network interception" (#12278)

This commit is contained in:
Alex Rudenko 2024-04-16 13:18:57 +02:00 committed by GitHub
parent 1208359ac3
commit e75ec2b016
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 32 additions and 26 deletions

View File

@ -18,8 +18,8 @@ Firefox integration is nearing feature parity with its previous CDP-based approa
To gauge the capabilities of WebDriver BiDi, we utilized the comprehensive [Puppeteer test suite](https://puppeteer.github.io/ispuppeteerwebdriverbidiready/) To gauge the capabilities of WebDriver BiDi, we utilized the comprehensive [Puppeteer test suite](https://puppeteer.github.io/ispuppeteerwebdriverbidiready/)
- For Firefox, there are currently under [30](https://puppeteer.github.io/ispuppeteerwebdriverbidiready/firefox-delta.json) failing tests compared to the CDP implementation, while over [140](https://puppeteer.github.io/ispuppeteerwebdriverbidiready/firefox-delta.json) new tests successfully utilize WebDriver BiDi, demonstrating its growing potential. - For Firefox, there are currently under [60](https://puppeteer.github.io/ispuppeteerwebdriverbidiready/firefox-delta.json) failing tests compared to the CDP implementation, while over [82](https://puppeteer.github.io/ispuppeteerwebdriverbidiready/firefox-delta.json) new tests successfully utilize WebDriver BiDi, demonstrating its growing potential.
- For Chrome, around 85% of tests pass with WebDriver BiDi, indicating room for improvement compared to the CDP-based approach. - For Chrome, around 68% of tests pass with WebDriver BiDi, indicating room for improvement compared to the CDP-based approach.
## Get started ## Get started
@ -41,28 +41,17 @@ This is an exciting step towards a more unified and efficient cross-browser auto
## Puppeteer features supported over WebDriver BiDi ## Puppeteer features supported over WebDriver BiDi
- Browser automation - Browser and page automation
- Puppeteer.launch
- Browser.close - Browser.close
- Browser.userAgent() - Frame.goto() (except `referer` and `referrerPolicy`)
- Page automation
- Page.bringToFront - Page.bringToFront
- Page.goBack() - Page.goBack()
- Page.goForward() - Page.goForward()
- Page.goto (except `referer` and `referrerPolicy`) - Page.goto (except `referer` and `referrerPolicy`)
- Frame.goto() (except `referer` and `referrerPolicy`)
- Page.reload (except for `ignoreCache` parameter) - Page.reload (except for `ignoreCache` parameter)
- Page.setViewport (`width`, `height`, `deviceScaleFactor` only) - Page.setViewport (`width`, `height`, `deviceScaleFactor` only)
- Page.cookies() - Puppeteer.launch
- Page.setCookie()
- Page.deleteCookie()
- Page.workers()
- PageEvent.WorkerCreated
- PageEvent.WorkerDestroyed
- Page.setExtraHTTPHeaders()
- [Script evaluation](https://pptr.dev/guides/evaluate-javascript): - [Script evaluation](https://pptr.dev/guides/evaluate-javascript):
@ -111,9 +100,13 @@ This is an exciting step towards a more unified and efficient cross-browser auto
- BrowserContext.clearPermissionOverrides() - BrowserContext.clearPermissionOverrides()
- BrowserContext.overridePermissions() - BrowserContext.overridePermissions()
## Puppeteer features not yet supported over WebDriver BiDi
- [Request interception](https://pptr.dev/guides/request-interception) - [Request interception](https://pptr.dev/guides/request-interception)
- HTTPRequest.abort() (no custom error support)
- HTTPRequest.abort()
- HTTPRequest.abortErrorReason() - HTTPRequest.abortErrorReason()
- HTTPRequest.client()
- HTTPRequest.continue() - HTTPRequest.continue()
- HTTPRequest.continueRequestOverrides() - HTTPRequest.continueRequestOverrides()
- HTTPRequest.failure() - HTTPRequest.failure()
@ -124,8 +117,6 @@ This is an exciting step towards a more unified and efficient cross-browser auto
- HTTPRequest.responseForRequest() - HTTPRequest.responseForRequest()
- Page.setRequestInterception() - Page.setRequestInterception()
## Puppeteer features not yet supported over WebDriver BiDi
- Various emulations (most are supported with Chrome) - Various emulations (most are supported with Chrome)
- Page.emulate() (supported only in Chrome) - Page.emulate() (supported only in Chrome)
@ -143,7 +134,6 @@ This is an exciting step towards a more unified and efficient cross-browser auto
- CDP-specific features - CDP-specific features
- Page.createCDPSession() (supported only in Chrome) - Page.createCDPSession() (supported only in Chrome)
- HTTPRequest.client() (supported only in Chrome)
- Tracing (supported only in Chrome) - Tracing (supported only in Chrome)
- Coverage (supported only in Chrome) - Coverage (supported only in Chrome)
@ -151,6 +141,7 @@ This is an exciting step towards a more unified and efficient cross-browser auto
- Other methods: - Other methods:
- Browser.userAgent()
- Frame.isOOPFrame() - Frame.isOOPFrame()
- Frame.waitForDevicePrompt() - Frame.waitForDevicePrompt()
- HTTPResponse.buffer() - HTTPResponse.buffer()
@ -161,6 +152,8 @@ This is an exciting step towards a more unified and efficient cross-browser auto
- Input.dragOver() - Input.dragOver()
- Input.drop() - Input.drop()
- Page.authenticate() - Page.authenticate()
- Page.cookies()
- Page.deleteCookie()
- Page.emulateNetworkConditions() - Page.emulateNetworkConditions()
- Page.isDragInterceptionEnabled() - Page.isDragInterceptionEnabled()
- Page.isJavaScriptEnabled() (supported only in Chrome) - Page.isJavaScriptEnabled() (supported only in Chrome)
@ -169,10 +162,15 @@ This is an exciting step towards a more unified and efficient cross-browser auto
- Page.queryObjects() (supported only in Chrome) - Page.queryObjects() (supported only in Chrome)
- Page.screencast() (supported only in Chrome) - Page.screencast() (supported only in Chrome)
- Page.setBypassServiceWorker() - Page.setBypassServiceWorker()
- Page.setCookie()
- Page.setDragInterception() - Page.setDragInterception()
- Page.setExtraHTTPHeaders()
- Page.setOfflineMode() - Page.setOfflineMode()
- Page.setUserAgent() - Page.setUserAgent()
- Page.waitForDevicePrompt() - Page.waitForDevicePrompt()
- Page.waitForFileChooser() - Page.waitForFileChooser()
- Page.workers()
- PageEvent.popup - PageEvent.popup
- PageEvent.WorkerCreated
- PageEvent.WorkerDestroyed
- Target.opener() - Target.opener()

View File

@ -2733,12 +2733,6 @@
"expectations": ["TIMEOUT"], "expectations": ["TIMEOUT"],
"comment": "When navigating to page with authentication the command response (error) never comes without interception" "comment": "When navigating to page with authentication the command response (error) never comes without interception"
}, },
{
"testIdPattern": "[network.spec] network Page.setExtraHTTPHeaders should throw for non-string header values",
"platforms": ["darwin", "linux", "win32"],
"parameters": ["firefox", "webDriverBiDi"],
"expectations": ["PASS"]
},
{ {
"testIdPattern": "[network.spec] network Page.setExtraHTTPHeaders should work", "testIdPattern": "[network.spec] network Page.setExtraHTTPHeaders should work",
"platforms": ["darwin", "linux", "win32"], "platforms": ["darwin", "linux", "win32"],
@ -3986,6 +3980,20 @@
"expectations": ["SKIP"], "expectations": ["SKIP"],
"comment": "TODO: add a comment explaining why this expectation is required (include links to issues)" "comment": "TODO: add a comment explaining why this expectation is required (include links to issues)"
}, },
{
"testIdPattern": "[waittask.spec] waittask specs Frame.waitForSelector should survive cross-process navigation",
"platforms": ["darwin", "linux", "win32"],
"parameters": ["chrome", "webDriverBiDi"],
"expectations": ["SKIP"],
"comment": "TODO: add a comment explaining why this expectation is required (include links to issues)"
},
{
"testIdPattern": "[waittask.spec] waittask specs Frame.waitForSelector should survive cross-process navigation",
"platforms": ["darwin", "linux", "win32"],
"parameters": ["firefox", "webDriverBiDi"],
"expectations": ["SKIP"],
"comment": "TODO: add a comment explaining why this expectation is required (include links to issues)"
},
{ {
"testIdPattern": "[waittask.spec] waittask specs Frame.waitForSelector should survive cross-process navigation", "testIdPattern": "[waittask.spec] waittask specs Frame.waitForSelector should survive cross-process navigation",
"platforms": ["darwin", "linux", "win32"], "platforms": ["darwin", "linux", "win32"],