剧作家 - 针对不同环境和不同变量进行测试
Playwright - Test against different environments and different variables
我希望使用 Playwright 针对网页进行测试。
我正在使用的系统有 4 个不同的环境,我们需要针对这些环境进行部署,
例如测试 url 可能是
www.test1.com
www.test2.com
www.test3.com
www.test4.com
第一个问题是如何针对不同的环境?在我的剧作家配置中,我有一个 baseUrl,但我需要覆盖它。
此外,每个环境都有不同的登录凭据,我如何根据环境创建和覆盖这些作为参数?
自剧作家 v1.13.0
以来,有一个 baseURL
选项可用。您可能可以通过这种方式利用它
在你的config.js
文件中,你可以有这个
import { PlaywrightTestConfig } from '@playwright/test';
const config: PlaywrightTestConfig = {
use: {
baseURL: process.env.URL,
},
};
export default config;
现在在 package.json
文件中,您可以在 scripts
的各种环境的测试命令中设置环境变量,像这样
...
"scripts": {
"start": "node app.js",
"test1": "URL=www.test1.com mocha --reporter spec",
"test2": "URL=www.test2.com mocha --reporter spec",
.
.
},
...
同样,您也可以为登录凭据设置环境变量,然后以与传递 URL
相同的方式在脚本中传递它们。
我希望使用 Playwright 针对网页进行测试。
我正在使用的系统有 4 个不同的环境,我们需要针对这些环境进行部署, 例如测试 url 可能是
www.test1.com
www.test2.com
www.test3.com
www.test4.com
第一个问题是如何针对不同的环境?在我的剧作家配置中,我有一个 baseUrl,但我需要覆盖它。
此外,每个环境都有不同的登录凭据,我如何根据环境创建和覆盖这些作为参数?
自剧作家 v1.13.0
以来,有一个 baseURL
选项可用。您可能可以通过这种方式利用它
在你的config.js
文件中,你可以有这个
import { PlaywrightTestConfig } from '@playwright/test';
const config: PlaywrightTestConfig = {
use: {
baseURL: process.env.URL,
},
};
export default config;
现在在 package.json
文件中,您可以在 scripts
的各种环境的测试命令中设置环境变量,像这样
...
"scripts": {
"start": "node app.js",
"test1": "URL=www.test1.com mocha --reporter spec",
"test2": "URL=www.test2.com mocha --reporter spec",
.
.
},
...
同样,您也可以为登录凭据设置环境变量,然后以与传递 URL
相同的方式在脚本中传递它们。