mstrelan/drupal-contrib

Drupal contrib 的 Composer 项目

安装: 612

依赖者: 0

建议者: 0

安全: 0

星标: 8

关注者: 3

分支: 4

公开问题: 5

类型:项目

1.4.1 2024-05-28 06:11 UTC

README

tests

先决条件

  • Composer
  • Docker / Docker compose
  • PhpStorm(可选)

入门

要开始,请运行以下命令

composer create-project mstrelan/drupal-contrib

目录结构

  • app/ - 这是网站根目录。Drupal 仓库将被检出到这里。
  • assets/scaffold/files/ - 将通过 composer 复制的文件。
  • bin/ - 供应商二进制文件放在这里。
  • src/ - composer 使用的脚本。
  • vendor/ - composer 供应商目录。

Docker compose

通过运行 docker-compose upmake start 启动堆栈。

您可以通过复制 .env.dist.env 来覆盖端口号和其他环境变量。

以下服务可用

  • nginx - 网络服务器
  • php-fpm - 服务器 Drupal 网站
  • php-cli - 与 Drupal 网站交互的 CLI 容器
  • mysql - 空数据库容器
  • chrome - 用于运行 webdriver 测试

Makefile 目标

Make 命令应在主机上执行。

  • clean - 运行 composer install,安装最小配置文件并提供一次性登录链接
  • start - 启动堆栈
  • stop - 停止堆栈
  • stop-php - 停止 php 容器
  • minimal - 使用最小配置文件安装 Drupal
  • standard - 使用标准配置文件安装 Drupal
  • umami - 使用 demo_umami 配置文件安装 Drupal
  • login - 获取一次性登录链接
  • switch - 切换分支,例如 make BRANCH=9.3 switch
  • 10.2|10.3|10.4|11.0|11.x - 提供指定 Drupal 版本的干净环境
  • php8.1|php8.2|php8.3 - 使用指定 php 版本启动堆栈

PhpStorm 配置

首次安装时,您将被询问是否要配置 PhpStorm。这将配置远程 PHP 解释器、PHPUnit 和调试路径映射。

远程解释器假定您已经配置并启用了 Docker 集成。请参阅 PhpStorm 文档中的 启用 Docker 支持 部分以设置此功能。

运行测试

如果您选择自动配置 PhpStorm,则应在 PhpStorm 中点击每个测试旁边的绿色三角形。

或者,您可以在命令行中像这样运行 phpunit

docker-compose exec php-cli bash
phpunit -c app/core/phpunit.xml.dist app/core/tests/Drupal/Tests/Core/DrupalKernel/

调试

可以通过 Xdebug 辅助浏览器扩展启用 HTTP 请求的 Xdebug

对于包括 drush 和 phpunit 的 CLI 脚本,使用 XDEBUG_SESSION=1。例如

您还可以通过在 PhpStorm 中点击测试旁边的运行测试按钮并选择调试来直接在 PhpStorm 中切换 Xdebug 以进行调试测试。

docker-compose exec php-cli bash
XDEBUG_SESSION=1 phpunit app/core/tests/Drupal/Tests/Core/DrupalTest.php --filter=testSetContainer

使用 Selenium 和 VNC 调试 WebDriver 测试

.env.dist 文件包含了如何配置 selenium 服务以使用 Chrome 或 Firefox 在调试模式下的示例。这会暴露一个 VNC 端口(默认为 5900),您可以通过连接到该端口来查看浏览器中运行的测试。使用 Remmina 或 VNC Viewer 等VNC客户端,只需连接到端口 127.0.0.1:5900 并使用密码 secret。如果您已更改了 VNC_PORT 环境变量,请确保连接到该端口。

Mailpit

mailpit 服务可用且已配置为捕获从网站发送的电子邮件。您可以通过 http://localhost:8025 访问。更多信息请参阅 https://github.com/axllent/mailpit

贡献

一旦您开始运行,您将在应用程序目录中检出 Drupal 核心代码。从这里,您可以为每个您正在处理的 issue 创建一个新的分支。