mirror of
https://github.com/Microsoft/vscode
synced 2024-08-27 04:49:35 +00:00
Update playwright to 1.12.x and enable tracing for smoke tests (#128061)
* 🆙 playwright
* create trace
This commit is contained in:
parent
75aa22e7d9
commit
fa032d752d
|
@ -178,7 +178,7 @@
|
|||
"opn": "^6.0.0",
|
||||
"optimist": "0.3.5",
|
||||
"p-all": "^1.0.0",
|
||||
"playwright": "1.11.1",
|
||||
"playwright": "1.12.3",
|
||||
"pump": "^1.0.1",
|
||||
"queue": "3.0.6",
|
||||
"rcedit": "^1.1.0",
|
||||
|
|
|
@ -15,6 +15,9 @@ import * as kill from 'tree-kill';
|
|||
const width = 1200;
|
||||
const height = 800;
|
||||
|
||||
const root = join(__dirname, '..', '..', '..');
|
||||
const logsPath = join(root, '.build', 'logs', 'smoke-tests-browser');
|
||||
|
||||
const vscodeToPlaywrightKey: { [key: string]: string } = {
|
||||
cmd: 'Meta',
|
||||
ctrl: 'Control',
|
||||
|
@ -29,7 +32,9 @@ const vscodeToPlaywrightKey: { [key: string]: string } = {
|
|||
esc: 'Escape'
|
||||
};
|
||||
|
||||
function buildDriver(browser: playwright.Browser, page: playwright.Page): IDriver {
|
||||
let traceCounter = 1;
|
||||
|
||||
function buildDriver(browser: playwright.Browser, context: playwright.BrowserContext, page: playwright.Page): IDriver {
|
||||
const driver: IDriver = {
|
||||
_serviceBrand: undefined,
|
||||
getWindowIds: () => {
|
||||
|
@ -38,6 +43,7 @@ function buildDriver(browser: playwright.Browser, page: playwright.Page): IDrive
|
|||
capturePage: () => Promise.resolve(''),
|
||||
reloadWindow: (windowId) => Promise.resolve(),
|
||||
exitApplication: async () => {
|
||||
await context.tracing.stop({ path: join(logsPath, `playwright-trace-${traceCounter++}.zip`) });
|
||||
await browser.close();
|
||||
await teardown();
|
||||
},
|
||||
|
@ -108,9 +114,6 @@ export async function launch(userDataDir: string, _workspacePath: string, codeSe
|
|||
...process.env
|
||||
};
|
||||
|
||||
const root = join(__dirname, '..', '..', '..');
|
||||
const logsPath = join(root, '.build', 'logs', 'smoke-tests-browser');
|
||||
|
||||
const args = ['--port', `${port++}`, '--browser', 'none', '--driver', 'web', '--extensions-dir', extPath];
|
||||
|
||||
let serverLocation: string | undefined;
|
||||
|
@ -172,13 +175,14 @@ export function connect(browserType: 'chromium' | 'webkit' | 'firefox' = 'chromi
|
|||
return new Promise(async (c) => {
|
||||
const browser = await playwright[browserType].launch({ headless: false });
|
||||
const context = await browser.newContext();
|
||||
await context.tracing.start({ screenshots: true, snapshots: true });
|
||||
const page = await context.newPage();
|
||||
await page.setViewportSize({ width, height });
|
||||
const payloadParam = `[["enableProposedApi",""],["skipWelcome","true"]]`;
|
||||
await page.goto(`${endpoint}&folder=vscode-remote://localhost:9888${URI.file(workspacePath!).path}&payload=${payloadParam}`);
|
||||
const result = {
|
||||
client: { dispose: () => browser.close() && teardown() },
|
||||
driver: buildDriver(browser, page)
|
||||
driver: buildDriver(browser, context, page)
|
||||
};
|
||||
c(result);
|
||||
});
|
||||
|
|
17
yarn.lock
17
yarn.lock
|
@ -7589,10 +7589,10 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0:
|
|||
dependencies:
|
||||
find-up "^4.0.0"
|
||||
|
||||
playwright@1.11.1:
|
||||
version "1.11.1"
|
||||
resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.11.1.tgz#c5f2946db5195bd099a57ce4e188c01057876cff"
|
||||
integrity sha512-UuMrYuvzttbJXUD7sTVcQBsGRojelGepvuQPD+QtVm/n5zyKvkiUErU/DGRXfX8VDZRdQ5D6qVqZndrydC2b4w==
|
||||
playwright@1.12.3:
|
||||
version "1.12.3"
|
||||
resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.12.3.tgz#113afa2cba10fb56e9a5b307377343e32a155a99"
|
||||
integrity sha512-eyhHvZV7dMAUltqjQsgJ9CjZM8dznzN1+rcfCI6W6lfQ7IlPvTFGLuKOCcI4ETbjfbxqaS5FKIkb1WDDzq2Nww==
|
||||
dependencies:
|
||||
commander "^6.1.0"
|
||||
debug "^4.1.1"
|
||||
|
@ -7606,7 +7606,7 @@ playwright@1.11.1:
|
|||
proxy-from-env "^1.1.0"
|
||||
rimraf "^3.0.2"
|
||||
stack-utils "^2.0.3"
|
||||
ws "^7.3.1"
|
||||
ws "^7.4.6"
|
||||
yazl "^2.5.1"
|
||||
|
||||
plist@^3.0.1:
|
||||
|
@ -10725,11 +10725,16 @@ write@1.0.3:
|
|||
dependencies:
|
||||
mkdirp "^0.5.1"
|
||||
|
||||
ws@^7.2.0, ws@^7.3.1:
|
||||
ws@^7.2.0:
|
||||
version "7.4.6"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
|
||||
integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
|
||||
|
||||
ws@^7.4.6:
|
||||
version "7.5.2"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.2.tgz#09cc8fea3bec1bc5ed44ef51b42f945be36900f6"
|
||||
integrity sha512-lkF7AWRicoB9mAgjeKbGqVUekLnSNO4VjKVnuPHpQeOxZOErX6BPXwJk70nFslRCEEA8EVW7ZjKwXaP9N+1sKQ==
|
||||
|
||||
xml-name-validator@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-1.0.0.tgz#dcf82ee092322951ef8cc1ba596c9cbfd14a83f1"
|
||||
|
|
Loading…
Reference in a new issue