1

我正在尝试在mcr.microsoft.com/playwright:bionicDocker 容器中执行空手道脚本。

我已经暴露了端口 5900,如下所示,但不确定如何获取playwrightUrl容器的端口。我是否需要在node server.js其中执行以获取 websocket 端点?

docker run --name playwright -it --rm --ipc=host --cap-add=SYS_ADMIN -u root -p 5900:5900  -v $(pwd):/src -v /home/Automation/:/root/.m2 mcr.microsoft.com/playwright:bionic &
4

1 回答 1

1

因此,首先,您需要实际提供一个工作示例来说明您要实现的目标。

我从您的问题中了解到,您正在尝试通过终端中的 docker 命令提供测试的 url。

从 Playwright v1.13.0 开始,有一个可用的baseURL选项。你可以这样利用它

在你的config.js文件中,你可以有这个

import { PlaywrightTestConfig } from '@playwright/test';

const config: PlaywrightTestConfig = {
  use: {
    baseURL: process.env.URL,
  },
};
export default config;

在您运行 docker 的命令中,您可以传递为

docker run --name playwright -it --rm --ipc=host --cap-add=SYS_ADMIN -u root -p 5900:5900 -URL=whateverURLyouwant -v $(pwd):/src -v /home/Automation/:/root/.m2 mcr.microsoft.com/playwright:bionic &

另外,我想提一点的是,你不应该使用rootuser 来执行你的操作。root不推荐在 docker 中以用户身份使用。而是使用pwuser给定图像已经创建的图像。

于 2021-09-01T07:42:08.083 回答