PHP扩展开发之执行run-tests.php脚本报错

虽然PHP7.4带来了一个新扩展:PHP FFI,FFI提供了高级语言直接的互相调用,而对于PHP来说,FFI让我们可以方便的调用C语言写的各种库。但是这篇文章还是说一下传统的方式开发扩展遇到的一些问题

通过使用PHP为我们提供了生成基本代码的工具ext_skel,生成一个扩展的基础代码,在增加代码并编译之后需要进行一些单元测试,在扩展目录的tests文件夹中以phpt结尾的文件

我们可以通过自带的run-test.php脚本来执行phpt文件,并且和脚本中的断言做比对

使用方式如下

php run-tests.php tests/001.phpt

001.phpt是生成脚本自动生成的一个文件,用来测试扩展是否安装成功可用

但是当我们执行时却会发现报错了:

$ php run-tests.php tests/001.phpt
ERROR: environment variable TEST_PHP_EXECUTABLE must be set to specify PHP executable!

遇到事情不要慌,打开谷歌翻译一下

就知道是必须设置环境变量TEST_PHP_EXECUTABLE来指定PHP可执行文件

那么我们可以临时修改一下环境变量,执行

export TEST_PHP_EXECUTABLE=/usr/local/bin/php

替换对应的PHP可执行文件路径即可

也可以修改对应的配置文件,让它永久可以有效,这里就不说了,自行百度吧

phpt文件完整格式参考PHP: Quality Assurance

好了,这篇水文到此结束 👿

1 条评论

发表评论

*