当前位置: 首页 > news >正文

Playwright实战-在gitlab ci环境运行自动化测试

简介:CI/CD持续集成和持续部署是确保代码质量和快速交付的关键步骤。本文详细介绍了如何在GitLab CI环境中配置和运行Playwright测试。

1. 前置条件

开始之前,请确保满足以下前提条件:

  • Playwright测试可以在本地环境中运行正常

  • Gitlab账号及项目

  • Node.jsnpm基础

2.Playwright配置

2.1Playwright环境

首先,确保在您的项目 中安装了Playwright。如果没有的话,可使用npm进行安装:

npm install playwright

2.2Playwright测试

import { test, expect } from '@playwright/test'; test('basic test', async ({ page }) => { await page.goto('https://baidu.com'); const title = await page.title(); expect(title).toBe('百度一下,你就知道'); });

3.Gitlab CI配置

3.1.ymal文件配置

在项目的根目录 中创建.gitlab-ci.yml文件,并配置GitLab CI以运行Playwright测试。以下是一个示例配置:

image: mcr.microsoft.com/playwright:focal stages: - test playwright_tests: stage: test script: - npx playwright install --with-deps - npx playwright test artifacts: paths: - playwright-report/ expire_in: 1 week

说明如下

  • image: 使用官方的Playwright Docker镜像,确保环境中包含运行Playwright测试所需的所有依赖项。

  • stages: 定义了一个名为test的阶段。

  • playwright_tests: 定义了一个作业playwright_tests,它将在test阶段运行。

  • script: 定义了在作业中运行的脚本,包括安装 Playwright 依赖项和运行测试。

  • artifacts: 指定要保存的测试报告路径和过期时间。

3.2 更新到Gitlab仓库

将更改推送 到GitLab仓库:

git add . git commit -m "Add Playwright tests and GitLab CI configuration" git push origin main

3.3 查看测试结果

  • • 每次推送代码到GitLab仓库时,GitLab CI会自动触发Playwright测试并生成测试报告。

  • • 可以在GitLab项目的CI/CD部分查看作业的执行状态和详细日志。

3.4 环境变量

可以在.gitlab-ci.yml文件中添加环境变量,以便在测试中使用:

playwright_tests: stage: test script: - npx playwright install --with-deps - npx playwright test variables: BASE_URL: 'https://example.com' artifacts: paths: - playwright-report/ expire_in: 1 week

3.5 并行设置

可以利用GitLab CI的并行作业功能,加快测试执行速度:

playwright_tests: stage: test script: - npx playwright install --with-deps - npx playwright test parallel: 3 artifacts: paths: - playwright-report/ expire_in: 1 week

3.6 监控

3.7 日志检查

3.8 日志下载

4. 结论

Playwrght不仅提供了本地环境自动化测试 运行方式,还支持在dockerjenkinsgitlab运行,配置相对容易,能把自动化测试融合到研发cicd流水线,提高交付效率和质量。

最后:下方这份完整的软件测试 视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

http://www.jsqmd.com/news/684950/

相关文章:

  • Android 开发警告信息:Static member ‘FaceIdentifyManager.init(...)‘ accessed via instance reference
  • 3步解锁!用TranslucentTB打造你的专属Windows透明任务栏
  • 置信区间在房地产数据分析中的Python实现与应用
  • 后量子密码中的拒绝采样技术及硬件优化
  • golang如何设计RESTful API命名规范_golang RESTful API命名规范思路
  • PDF转长图终极指南:三种方法,轻松将多页文档变为一张吸睛长图
  • 【紧急避坑】GraalVM静态镜像启动即崩?92%开发者忽略的--initialize-at-build-time误用与3种安全初始化策略
  • Blazor开发人力成本飙升真相,深度拆解:为什么团队在.NET 9+中多花37%工时?——附自动化诊断工具包下载
  • 保姆级教程:用K210和STM32F103玩转串口通信(附完整代码与接线图)
  • CSS如何实现文本溢出显示省略号_掌握text-overflow使用方法
  • 任务分解到可执行 Action:从自然语言到 Action Schema 的转换流程
  • 学工平台让学生请假告别繁琐,移动审批随时处理
  • MoE模型与3D堆叠DRAM的协同优化实践
  • 宝塔面板安装后无法使用宝塔文件管理器_重置系统安全组
  • 2026年VCF通讯录转换器深度拆解|6家主流品牌商技术功能横向对比
  • pytest + yaml 框架 - Pycharm 设置 yaml 格式用例模板,高效写用例
  • JVM 类加载机制深挖:双亲委派不是银弹
  • WebRPA教程:零代码实现浏览器网页自动化、爬虫与桌面自动化神器 打造自己的AI浏览器!轻松实现浏览器自动点击 自动处理数据 网络抓包 表格数据提取等复杂功能
  • 10分钟精通暗黑破坏神2存档编辑:d2s-editor零基础配置技巧
  • 2026留学生回国找工作靠谱机构名录盘点 - 优质品牌商家
  • 如何减小音频文件体积?盘点5个MP3压缩瘦身方法!
  • 向量搜索误召回率高达38%?EF Core 10中Normalize预处理缺失、余弦阈值漂移、HNSW参数过拟合三重危机预警
  • Blazor + WASI + .NET AOT三重编译链曝光:2026边缘计算场景下首例亚毫秒级首屏加载实录
  • 从零构建BQ4050 SMBus通信:STM32 IO模拟时序实战解析
  • 大语言模型推理加速:SPEQ量化与推测式解码技术解析
  • DPI-每英寸点数
  • 软件知识管理中的专家网络建设
  • 如何优化大量DML时的段空间分配_FREELISTS与ASSM的并发性能
  • Python类型注解与mypy静态检查
  • AI 智能体的标准开发流程