[meta] Figure out how to test sub targets - review the client library
Categories
(Remote Protocol :: CDP, task)
Tracking
(Not tracked)
People
(Reporter: ochameau, Unassigned)
References
Details
(Keywords: meta)
Bug 1533682 is introducing a support to attach to sub-targets.
The MainProcessTargets exposes via the Target domain a sub-target, the TabTarget for the tab created via browser.newPage.
This is based on sessions and sessionId attribute at the protocol layer.
Unfortunately, the library we are currently using in our tests doesn't support this attribute and so doesn't support sub-targets.
This is a significant issue as the typical codepath in puppeteer involve this sub-target setup and so we won't be able to cover the codepath used by puppeteer.
We can always test the equivalent domains used by puppeteer via chrome-remote-interface, but that won't allow to cover all the specifics around the MainProcessTarget interactions puppeteer is having.
I see a couple of options here:
- contribute sessions support to chrome-remote-interface
- switch to another library which supports sessions (https://github.com/TracerBench/chrome-debugging-client ?)
- investigate puppeteer and chromium frontend client implementations. It looks like they are having distinct implementations. Would it be worth to all share a single one?
Something to keep in mind is that whatever client we choose here is most likely going to be the one we are going to use in DevTools frontend the day we start using CDP for DevTools.
Updated•7 years ago
|
Updated•7 years ago
|
Updated•3 years ago
|
We are not going to fix that bug for our CDP implementation.
Description
•