solutiondrive / sd-test-environment-shopware
Shopware项目的基础测试环境,基于Docker。
This package is auto-updated.
Last update: 2024-09-10 15:18:03 UTC
README
为了方便使用不同版本的Shopware和/或PHP进行测试,我们使用了基于Docker的环境。这里有一些提供MySQL、PHP等的Docker容器。本地文件系统被映射到需要它们的容器中。
关于此README的注意事项 此文件假定bin脚本是安装到vendor/bin
中(如composer默认所做)。如果您在composer.json
中更改了此行为,您必须相应地调整此文件中编写的命令。
安装
要将测试环境用于项目,请将以下依赖项添加到您的项目composer.json的require-dev部分
"require-dev": {
"solutiondrive/sd-test-environment-shopware": "*"
}
然后执行composer update
或使用composer require --dev
代替。
要初始化测试环境,例如,对于Shopware 5.7.x,只需运行以下命令
vendor/bin/sdTest.sh init 57
这将创建一些文件
/README.TESTING.md # This README.md in your project for other developers
/etc/test/docker-compose.yml # A docker-compose file which can be modified for special needs
使用/第一步
首先,您应该启动测试Docker容器(也请参阅此README的下一段内容)
vendor/bin/sdTest.sh start SHOPWARE_VERSION
处理插件
对于以下所有命令,您必须传递一个PHP和Shopware版本,例如,74表示PHP 7.4容器,57表示Shopware 5.7。
要添加插件,请运行
vendor/bin/sdPlugin.sh 74 57 add
要删除插件,请运行
vendor/bin/sdPlugin.sh 74 57 remove
要激活插件,请运行
vendor/bin/sdPlugin.sh 74 57 activate
要停用插件,请运行
vendor/bin/sdPlugin.sh 74 57 deactivate
控制测试环境
SHOPWARE_VERSION列表
- 52 -> v5.2.x
- 53 -> v5.3.x
- 54 -> v5.4.x
- 55 -> v5.5.x
- 56 -> v5.6.x
- 57 -> v5.7.x
例如,要使用Shopware 5.7启动容器并返回本地shell,只需运行
vendor/bin/sdTest.sh start 57
要停止容器,请运行
vendor/bin/sdTest.sh stop SHOPWARE_VERSION
在停止状态下,容器数据被保存。
要销毁您的容器,您可以运行
vendor/bin/sdTest.sh remove SHOPWARE_VERSION
要重新启动容器而不丢失数据,您可以运行
vendor/bin/sdTest.sh restart SHOPWARE_VERSION
您还可以在前景运行容器以监视容器的日志输出
vendor/bin/sdTest.sh run SHOPWARE_VERSION
然后,您可以通过按CTRL+C停止执行。容器将干净地退出。
如果您使用start
在后台启动了容器,您可以通过运行来查看日志
vendor/bin/sdTest.sh logs SHOPWARE_VERSION
您可以跟踪日志(如tail -f
或tailf
所知)
vendor/bin/sdTest.sh logs SHOPWARE_VERSION -f
要连接到MySQL服务器,请使用127.0.0.1
作为主机,端口号为(默认:10331),配置在etc/test/docker-compose.yml
中。
较少需要的
要强制重建容器,您可以运行
vendor/bin/sdTest.sh build --no-cache
要确保您有最新版本的(基础)容器,您可以强制拉取较新的镜像
vendor/bin/sdTest.sh build --no-cache --pull
要确保使用最新的容器(不仅是基于构建的容器)
vendor/bin/sdTest.sh pull SHOPWARE_VERSION
要一次性销毁并重新启动您的容器而无需重新构建镜像,请运行
vendor/bin/sdTest.sh reset SHOPWARE_VERSION
在测试环境中执行命令
命令(例如清除缓存或运行设置)可以在容器内执行。您必须指定要执行命令的PHP和Shopware版本,例如,74表示PHP 7.4容器,57表示Shopware 5.7.x。
vendor/bin/sdRunInTest.sh 74 57 ./app/install.sh
如果您想,您甚至可以在PHP容器中获取shell。
vendor/bin/sdRunInTest.sh 74 57 /bin/bash