dusk

用 PHP 链式写法驱动真实浏览器,端到端测试 Laravel 应用

Laravel Dusk 是 Laravel 官方提供的端到端测试与浏览器自动化工具。它让 PHP 开发者无需手写复杂的 WebDriver 协议代码,就能用接近自然语言的链式 API 驱动真实浏览器,完成页面访问、表单填写、按钮点击、断言文本与元素可见性等操作。Dusk 默认使用 ChromeDriver,也支持其他 WebDriver 兼容浏览器,并内置了无头模式,方便在 CI 中运行。它解决了传统 PHPUnit 只能做单元/功能测试、无法覆盖 JavaScript 渲染和真实用户交互的问题,适合验证登录注册、支付流程、SPA 交互等关键路径。相比 Selenium 原生绑定,Dusk 与 Laravel 的测试生命周期、数据库迁移、认证系统深度集成,可复用测试环境配置,并支持页面对象模式组织复杂用例,降低维护成本。

开源 free 自动化工作流
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1946
维护状态 较活跃
是否开源
定价模式 free

项目数据

分类自动化工作流
开发团队laravel
所属国家
定价模式free
价格说明开源免费,MIT 许可证
访问状态
是否开源
开源协议MIT
主要语言PHP
技术栈/模型laravel,testing,webdriver
GitHub 星标★ 1946
30天Star增速
HF 下载量
上线时间2016-12-06 00:00:00
最近更新2026-09-16 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-09-18
浏览次数0

使用教程

难度:入门 约 15 分钟 部署方式:库/依赖 4 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • 已有一个 Laravel 应用(Dusk 为 Laravel 官方测试工具)
  • 本地已安装 PHP 运行环境
  • 按 README 说明,默认无需安装 JDK 或 Selenium
  • 需要可用的 Chrome 浏览器环境(Dusk 默认使用独立 Chromedriver)

安装与启动步骤

  1. 1确认 Laravel 项目

    Dusk 是 Laravel 组件,需先有一个可运行的 Laravel 应用作为宿主项目;README 未给出创建项目的命令,请自行准备。

  2. 2查看官方文档

    README 只提供文档入口,安装与配置说明均以官方文档为准,先打开文档确认当前版本要求。

  3. 3准备浏览器驱动

    README 明确 Dusk 默认使用独立 Chromedriver,无需安装 JDK 或 Selenium;也可改用其他 Selenium 兼容驱动。

  4. 4按文档接入并运行

    安装包、生成测试文件、执行测试的具体命令请严格照抄官方文档,README 未收录这些命令,不要凭记忆执行。

如何确认成功

README 未提供启动或验证命令,请以官方文档(https://laravel.com/docs/dusk)中的安装说明为准,确认测试可正常驱动浏览器即成功。

常见问题

Q:需要先安装 Selenium 或 JDK 吗?

A:不需要。README 明确说明 Dusk 默认使用独立的 Chromedriver,无需在机器上安装 JDK 或 Selenium。

Q:可以用 Chrome 以外的浏览器吗?

A:可以。README 说明你能够自由使用任何其他 Selenium 驱动,具体接入方式请查阅官方文档。

Q:为什么这份教程没有安装命令?

A:本次提供的 README 节选只有简介和文档链接,没有安装说明,为避免误导,未编造任何包名或参数。

注意事项

  • 本教程依据的 README 节选不含安装步骤,实际安装请以 https://laravel.com/docs/dusk 为准。
  • Dusk 面向 Laravel 项目,非 Laravel 的 PHP 项目需要额外改造。
  • Dusk 默认驱动为独立 Chromedriver,支持无头模式,便于在 CI 中运行。
  • 包管理与版本要求请参考 Packagist 上的 laravel/dusk 页面。

核心亮点

  • 与 Laravel 深度集成,可直接复用测试数据库、认证和 .env 配置,开箱即用
  • 链式 API 简洁直观,如 visit、type、click、assertSee,学习成本低
  • 内置无头模式与页面对象模式,适合 CI 持续集成和复杂用例组织

不足之处

  • 仅面向 Laravel 生态,非 Laravel 的 PHP 项目无法直接使用
  • 依赖 ChromeDriver 等外部浏览器驱动,环境配置和版本匹配偶有麻烦

适用场景

  • 验证用户注册登录、表单提交等关键业务流程
  • 测试包含 JavaScript 渲染的前端交互,如弹窗、下拉菜单
  • 在 CI 流水线中自动跑端到端回归测试,防止发布前功能退化

替代项目

Selenium、Codeception

项目介绍

dusk 是一个自动化工作流领域的开源项目,官方简介:Laravel Dusk provides simple end-to-end testing and browser automation.。项目使用 PHP 开发,在 GitHub 上获得 1946 星标。

上一篇:selenium

下一篇:stagehand-python

同类项目推荐

n8n 开源

拖拽搭建自动化流程,轻松接入 AI 与 400+ 应用,搞定重复工作。

Fair-code workflow automation platform with native AI capabilities. Combine visual b···

★ 205363 2026-08-10
robotcode 开源

让 Robot Framework 拥有现代 IDE 体验,调试、补全、运行一气呵成。

Open Source Toolkit for Robot Framework, providing Language Server Protocol support,···

★ 299 2026-08-10
puppeteer 开源

用 JavaScript 轻松操控无头浏览器,搞定自动化测试与网页抓取。

JavaScript API for Chrome and Firefox

★ 95591 2026-08-10
customermates 开源

比 Pipedrive 直观 10 倍的现代开源 CRM,轻松管理客户与自动化流程。

Building a modern alternative to Pipedrive that is 10x more intuitive.

★ 227 2026-08-10