playwright icon indicating copy to clipboard operation
playwright copied to clipboard

[Feature]: test ui mode doesn't work well for android webviews about tracing

Open flapili opened this issue 11 months ago • 0 comments

🚀 Feature Request

Capture all trace in ui mode for android webviews

Example

using this fixtures to use an android device with the ui mode would report same information as any other browser (using the same pattern with chromium work out of box)

import { _android, test as base } from '@playwright/test'

export const fixtures = base.extend({
  // eslint-disable-next-line no-empty-pattern
  context: async ({}, use) => {
    const devices = await _android.devices()
    const device = devices[0]
    if (!device)
        throw new Error('No Android device found, please connect one via ADB')

    const ctx = await device.launchBrowser()
    await ctx.tracing.start({
      screenshots: true,
      snapshots: true,
      sources: true,
    })
    await use(ctx)
    await ctx.tracing.stop({
      path: 'trace-android.zip',
    })
  },

  page: async ({ context }, use) => {
    const page = await context.newPage()
    await use(page)
  },
})

Motivation

use ui mode timeline and others non-working tabs (only network/metadata/locator from what I saw) with any android webviews

Image

also, look like tracing is working (except for test metadata panel, which look like related to the runner server ?)

trace-android.zip

Image

flapili avatar Feb 09 '25 19:02 flapili