Issue 1:
Context:

Playwright Version: 1.0.2

Operating System: Windows 10

Node version: 13.12, 14.0, 14.2

Browser: All

Code Snippet

Using the snippet from getting started:

const { chromium, firefox, webkit } = require('playwright');

(async () => {
try {
const browser = await chromium.launch();
// const browser = await firefox.launch();
// const browser = await webkit.launch();
const page = await browser.newPage();
await page.goto('http://whatsmyuseragent.org/');
await page.screenshot({ path: `example.png` });
await browser.close();
} catch (err) {
console.error(err);
}
})();

Describe the bug

In an existing project (that had Cypress installed, not sure if that's relevant), I ran npm i playwright (in Windows Terminal/PowerShell), then ran npm audit fix (I got distracted) and noticed that Cypress re-ran some things. Then I ran the snippet above, and it failed for all three browsers.

I uninstalled Cypress, deleted package-lock.json and node_modules and ran npm i again. Still all three failed. I switched from Node 14.0 to 13.12 (using nvm windows, if that's relevant) and tried again, all three failed, switched to Node 14.2 and now webkit and firefox work (although I admit I'm maybe changing more than one variable between attempts).

My directory C:\Users\david\AppData\Local\ms-playwright\chromium-764964\chrome-win contains only a single file, 84.0.4135.0.manifest. Its contents are:

<assembly
xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<assemblyIdentity
name='84.0.4135.0'
version='84.0.4135.0'
type='win32'/>
<file name='chrome_elf.dll'/>
</assembly>

I have Chrome and Chrome Canary (and Edge and Edge Canary) installed on my machine, not sure if that makes a difference.

With Node 14.2 I created a brand new project, installed only playwright, and it failed for chromium but works for firefox and webkit.

Then I deleted C:\Users\david\AppData\Local\ms-playwright and started all over again with Node 14.2 and everything worked. This seems to indicate that during install something is checking if the ms-playwright directory is there, but not checking that its contents are correct.

Lastly, I went back to how (I thought) I started out. Node 13.2, deleted C:\Users\david\AppData\Local\ms-playwright, and ran npm i playwright again and everything worked fine. So after all that I can't pinpoint a specific scenario, but hopefully some of the above is useful in ironing out install kinks.

May I suggest that when running, you check that the correct assets are available and install them if necessary?

Maybe this is a duplicate of #1992 or #1988 or #1085, but they seem different enough that I'll create this as a new issue.

Issue 2:
Context:

GOOD Playwright Version: 0.13.0-next.1587452068410

BAD Playwright Version: 0.14.0

Operating System: macOS

Describe the bug

I'm seeing a lot of Navigation timeout errors on 0.14.0 that don't seem valid. I haven't found a way to reliably repro yet, but I did find one clue. A lot of the time, my error message gets duplicated in this weird way.

TimeoutError: Navigation timeout exceeded while navigating to https://portfolio.adobe.com/ while navigating to https://portfolio.adobe.com/

I'm going to keep trying to repro, but I figured it was worth posting now anyway in case the double error message was enough. This was also happening to me sometimes in 0.13.0-*, but not nearly as often.