test-runner icon indicating copy to clipboard operation
test-runner copied to clipboard

[bug] Cannot find playwright package

Open Matthematic opened this issue 1 year ago • 7 comments

Describe the bug While using Yarn 3 and after following these installation steps, running test-storybook shows the following error: image

What problem could cause this, and is there a workaround?

To Reproduce Steps to reproduce the behavior:

  1. Be using Yarn 3
  2. Install the test-runner using https://storybook.js.org/docs/react/writing-tests/test-runner
  3. run "yarn test-storybook"
  4. See error

Expected behavior Expectation is that the test-runner correctly locates playwright.

Screenshots If applicable, add screenshots to help explain your problem.

System MacOS Node 18 Yarn 3 Storybook 7.1.0

Matthematic avatar Aug 01 '23 16:08 Matthematic

Bump on this one. I’m seeing the same issue with the latest playwright / storybook. Specifically here is what I’m seeing

Install just @playwright/test and you get this error when trying to run test-storybook but playwright itself works fine. Install playwright-chromium and this will allow test-storybook to run properly but then playwright errors out saying it can’t find @playwright/test even though it exists. Seems like something changed recently to cause some conflicts in how things work.

termleech avatar Aug 15 '23 12:08 termleech

Bump on this one. I’m seeing the same issue with the latest playwright / storybook. Specifically here is what I’m seeing

Install just @playwright/test and you get this error when trying to run test-storybook but playwright itself works fine. Install playwright-chromium and this will allow test-storybook to run properly but then playwright errors out saying it can’t find @playwright/test even though it exists. Seems like something changed recently to cause some conflicts in how things work.

I was also able to run test-storybook after manually installing playwright-chromium.

pepjo avatar Aug 15 '23 13:08 pepjo

@pepjo the issue is that you will not be able to use playwright now. I apparently missed this before in the playwright release notes for version 1.34.0

⚠️ Breaking changes

npx playwright test no longer works if you install both playwright and @playwright/test. There's no need to install both, since you can always import browser automation APIs from @playwright/test directly:

// automation.ts import { chromium, firefox, webkit } from '@playwright/test'; /* ... */

So the issue is that test-runner uses jest-playwright-present which requires the playwright-chromium package but playwright won't let you do that anymore. Interestingly jest-playwright-preset is deprecated so I'm going to see if there is a way not to use it by hacking something up.

termleech avatar Aug 15 '23 15:08 termleech

So circling back to this we found an interesting thing. For some reason we had a playwright folder in our mono repo and for some reason it was trying to import from that folder and failing. Once we renamed that worked we could just install @playwright/test and everything worked with both storybook and playwright.

termleech avatar Aug 18 '23 16:08 termleech

We are encountering this same issue. I installed playwright-chromium in our monorepo packages but it didn't work.

Turns out the workaround is to install playwright-chromium in the workspace root as well, once I did that I was able to run the tests.

PilotConway avatar Aug 28 '23 15:08 PilotConway