PhpStorm中CLI运行脚本及单元测试相关配置

PHP CLI解释器配置

通过配置 PHP CLI解释器,可使用户在为安装PHP的情况下运行PHP相关代码

点击菜单 File > Settings 在设置中选中 Languages & Frameworks > PHP

点击CLI Interpreter 右侧的 ... 进入 CLI Interpreters管理页面
image.png

点击 + 并选择 来源为 From Docker, Vagrant, VM, Remote...


image.png
在出现的 Configure Remote PHP Interpreter 中选择来源为 Docker

Server为默认,Image name为先前配置的镜像标签 kyzs:dev

点击OK确定进入CLI Interpreter的编辑页
image.png
PHPStorm会自动检测PHP的版本及其配置

这里我们设置debug扩展 Debugger extension 为 

/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so
这样在进行debug调试的时候会自动加载此插件
点击Apply应用配置
image.png
配置好后可见下图中Path mappings 与Docker container的文件映射关系已经建立

点击Apply使配置生效并关闭设置界面
image.png

PHPUnit单元测试的配置

点击菜单 File > Settings 进入设置

进入 Languages & Frameworks > PHP > Test Frameworks 配置项

点击 + 并选择PHPUnit by Remote Interperter 添加远程运行配置


image.png

在解释器的选择界面选择上面设置的 kyzs:dev(7.2.6) 并点击OK确认选择


image.png

新增配置默认会自动设置好路径映射关系,如果映射错误可自行修改

PHPUnit library在开元助手的项目中为通过composer加载的,所以我们选择 User Composer autoloader 并设置在容器中 autoloader.php 的绝对路径

设置完毕后会自动检测PHPUnit的版本

可自行根据需要在下方设置PHPUnit的配置文件及bootstrap文件


image.png

下面我们选择一个测试用例进行简单的测试

在AuthTest类的中右键并点击 Run 'testLogin' 运行测试


image.png

下方的Run面板会展示运行的过程及结果


image.png

下面我们添加一个断点,并右键选择 Debug 'testLogin' 进行调试
image.png

当程序在运行到断点位置时会自动打开调试界面,方便在开发中调试问题
实例中的项目为当前正在进行的开元助手项目

PHPStorm版本为2018.1.3版本(有每月一次更新的EAP版本可免费使用,建议使用最新的稳定版或EAP版本)

如果有什么建议或意见欢迎提出或在下方评论,有什么问题也可以随时咨询

Windows下如果在运行单元测试时出现 /bin/sh: File not found的提示一般是由于文件的换行格式为CRLF导致的(PHPStorm打开文件后右下角显示为CRLF)

可尝试通过如下方法解决:

在项目根目录打开git bash并运行如下命令

# 设置项目中换行格式为lf
git config core.eol lf
# 删除git中的文件 注意执行前保存好已进行的修改
git ls-files -z | xargs -0 rm
# 检出文件
git checkout .

参考1. How do I force git to use LF instead of CR+LF under windows?

你可能感兴趣的:(PhpStorm中CLI运行脚本及单元测试相关配置)