如何在 github-actions 中运行针对 localhost 的 playwright?

Dan*_*Dan 6 next.js github-actions playwright

我正在尝试对 github-actions 运行剧作家 E2E 测试,但到目前为止尚未成功。

    - name: Run build and start
      run: |
        yarn build:e2e
        yarn start:e2e &
    - name: Run e2e
      run: |
        yarn e2e
Run Code Online (Sandbox Code Playgroud)

我不认为服务器在playwright运行时正在运行,因为所有 e2e 测试最终都失败了。

运行构建并启动

Done in 192.91s.
yarn run v1.22.19
$ env-cmd -f environments/.env.e2e next start
ready - started server on 0.0.0.0:3000, url: ***
Run Code Online (Sandbox Code Playgroud)

运行 e2e

Test timeout of 270000ms exceeded while running "beforeEach" hook.
Run Code Online (Sandbox Code Playgroud)

我非常确定剧作家无法http://localhost:3000从上一步连接到,这就是所有测试超时的原因。

Mit*_*ani 4

我遇到了类似的问题,我通过将其添加到 playwright.config.ts 来修复它

const config: PlaywrightTestConfig = {
// the rest of the options
  webServer: {
    command: 'yarn start',
    url: 'http://localhost:3000/',
    timeout: 120000,
  },
  use: {
    baseURL: 'http://localhost:3000/',
  },
  // the rest of the options
};
export default config;
Run Code Online (Sandbox Code Playgroud)

另外,我不需要在 GitHub Actions 工作流程中启动纱线,只需纱线构建就足够了。

来源: https: //github.com/microsoft/playwright/issues/14814