Playwright 运行项目。

简介: Playwright 运行项目。

介绍
项目是使用相同配置运行的测试的逻辑组。我们使用项目,以便可以在不同的浏览器和设备上运行测试。项目在 playwright.config.ts 文件中配置,配置完成后,你可以在所有项目或仅在特定项目上运行测试。你还可以使用项目在不同的配置中运行相同的测试。例如,你可以在登录和注销状态下运行相同的测试。

通过设置项目,你还可以运行一组具有不同超时或重试的测试,或者针对不同环境(例如登台和生产、按包/功能拆分测试等)运行一组测试。

为多个浏览器配置项目
通过使用项目,你可以在多种浏览器(例如 chromium、webkit 和 firefox)以及品牌浏览器(例如 Google Chrome 和 Microsoft Edge)中运行测试。Playwright 还可以在模拟平板电脑和移动设备上运行。请参阅 设备参数注册表,了解所选台式机、平板电脑和移动设备的完整列表。

import { defineConfig, devices } from '@playwright/test';

export default defineConfig({
projects: [
{
name: 'chromium',
use: { ...devices['Desktop Chrome'] },
},

{
  name: 'firefox',
  use: { ...devices['Desktop Firefox'] },
},

{
  name: 'webkit',
  use: { ...devices['Desktop Safari'] },
},

/* Test against mobile viewports. */
{
  name: 'Mobile Chrome',
  use: { ...devices['Pixel 5'] },
},
{
  name: 'Mobile Safari',
  use: { ...devices['iPhone 12'] },
},

/* Test against branded browsers. */
{
  name: 'Microsoft Edge',
  use: {
    ...devices['Desktop Edge'],
    channel: 'msedge'
  },
},
{
  name: 'Google Chrome',
  use: {
    ...devices['Desktop Chrome'],
    channel: 'chrome'
  },
},

],
});
运行项目
Playwright 将默认运行所有项目。
npx playwright test

Running 7 tests using 5 workers

✓ [chromium] › example.spec.ts:3:1 › basic test (2s)
✓ [firefox] › example.spec.ts:3:1 › basic test (2s)
✓ [webkit] › example.spec.ts:3:1 › basic test (2s)
✓ [Mobile Chrome] › example.spec.ts:3:1 › basic test (2s)
✓ [Mobile Safari] › example.spec.ts:3:1 › basic test (2s)
✓ [Microsoft Edge] › example.spec.ts:3:1 › basic test (2s)
✓ [Google Chrome] › example.spec.ts:3:1 › basic test (2s)
使用 --project 命令行选项运行单个项目。

npx playwright test --project=firefox

Running 1 test using 1 worker

✓ [firefox] › example.spec.ts:3:1 › basic test (2s)

VS Code 测试运行程序在 Chrome 的默认浏览器上运行你的测试。要在其他/多个浏览器上运行,请单击测试侧栏中的播放按钮下拉菜单,然后选择另一个配置文件,或通过单击“选择默认配置文件”修改默认配置文件,然后选择你希望运行测试的浏览器。
为多个环境配置项目
通过设置项目,我们还可以运行一组具有不同超时或重试的测试,或者针对不同环境运行一组测试。例如,我们可以在暂存环境中重试 2 次,也可以在生产环境中重试 0 次。

playwright.config.ts
import { defineConfig } from '@playwright/test';

export default defineConfig({
timeout: 60000, // Timeout is shared between all tests.
projects: [
{
name: 'staging',
use: {
baseURL: 'staging.example.com',
},
retries: 2,
},
{
name: 'production',
use: {
baseURL: 'production.example.com',
},
retries: 0,
},
],
});

目录
相关文章
|
6月前
|
测试技术
如何用命令行执行cypress?
如何用命令行执行cypress?
111 0
|
6月前
|
Web App开发 API Python
Playwright系列(8):认识playwright 相关库
Playwright系列(8):认识playwright 相关库
176 0
Playwright系列(8):认识playwright 相关库
|
6天前
|
Web App开发 JavaScript 测试技术
Playwright 测试夹具
Playwright 测试夹具
8 1
|
4天前
|
JSON 测试技术 数据格式
Playwright 测试报告器
Playwright 测试报告器
15 4
|
6月前
|
Web App开发 测试技术 API
playwright使用:启动浏览器与多种运行方式
本文介绍了Playwright,一个用于浏览器自动化的强大工具,支持Chrome、Firefox和WebKit。展示了如何同步和异步启动浏览器,以及使用`with`语句和`start/stop`方法。通过设置`headless=False`可显示浏览器界面。Playwright的等待机制不同于Selenium,采用`slow_mo`全局减速或`wait_for_timeout`进行等待。文章还展示了填写表单和点击元素的示例,并预告下文将讨论元素定位方法。
268 6
|
6月前
|
Web App开发 测试技术 C++
Playwright安装与Python集成:探索跨浏览器测试的奇妙世界
Playwright是新兴的跨浏览器测试工具,相比Selenium,它支持Chrome、Firefox、WebKit,执行速度快,选择器更稳定。安装Playwright只需一条`pip install playwright`的命令,随后的`playwright install`会自动添加浏览器,无需处理浏览器驱动问题。这一优势免去了Selenium中匹配驱动的烦恼。文章适合寻求高效自动化测试解决方案的开发者。
122 2
|
6月前
|
Web App开发 Linux C++
Playwright系列(7):用VSCode 开始写Playwright 脚本
Playwright系列(7):用VSCode 开始写Playwright 脚本
898 0
Playwright系列(7):用VSCode 开始写Playwright 脚本
|
6月前
|
JSON 测试技术 数据安全/隐私保护
如何调试cypress脚本?
如何调试cypress脚本?
如何调试cypress脚本?
|
6月前
|
Web App开发 存储 测试技术
Playwright系列(11):Playwright命令行
Playwright系列(11):Playwright命令行
382 0
|
6月前
|
Web App开发 Linux iOS开发
PlayWright 系列1:安装
PlayWright 系列1:安装
165 0