首页 / PHP / PHP7扩展之自动化测试
PHP7扩展之自动化测试
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP7扩展之自动化测试,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3276字,纯文字阅读大概需要5分钟。
内容图文
![PHP7扩展之自动化测试](/upload/InfoBanner/zyjiaocheng/159/3a6a7a20620346a4985cbcc4c56d50e1.jpg)
如果你刚刚安装完 PHP7,直接运行 make test,经过漫长的等待时间之后,最终的统计结果大概是这样的:
会出现这么多 skip 和 fail 说明有一些扩展你没有安装,相关环境的配置也需要优化
不过一般来讲我们不需要运行这么多的测试脚本,尤其对单一扩展而言,针对相关接口来测试就可以了,所以我们进一步看看如何独立运行测试脚本
首先打开 php 的 Makefile文件,我们看看 make test 都做了什么
test: all
@if test ! -z "$(PHP_EXECUTABLE)" && test -x "$(PHP_EXECUTABLE)"; then INI_FILE=`$(PHP_EXECUTABLE) -d 'display_errors=stderr' -r 'echo php_ini_loaded_file();' 2> /dev/null`; if test "$$INI_FILE"; then $(EGREP) -h -v $(PHP_DEPRECATED_DIRECTIVES_REGEX) "$$INI_FILE" > $(top_builddir)/tmp-php.ini; else echo > $(top_builddir)/tmp-php.ini; fi; INI_SCANNED_PATH=`$(PHP_EXECUTABLE) -d 'display_errors=stderr' -r '$$a = explode(",\n", trim(php_ini_scanne
d_files())); echo $$a[0];' 2> /dev/null`; if test "$$INI_SCANNED_PATH"; then INI_SCANNED_PATH=`$(top_srcdir)/build/shtool path -d $$INI_SCANNED_PATH`; $(EGREP) -h -v $(PHP_DEPRECATED_DIRECTIVES_REGEX) "$$INI_SCANNED_PATH"/*.ini >> $(top_builddir)/tmp
-php.ini; fi; TEST_PHP_EXECUTABLE=$(PHP_EXECUTABLE) TEST_PHP_SRCDIR=$(top_srcdir) CC="$(CC)" $(PHP_EXECUTABLE) -n -c $(top_builddir)/tmp-php.ini $(PHP_TEST_SETTINGS) $(top_srcdir)/run-tests.php -n -c $(top_builddir)/tmp-php.ini -d extensi/modules/ $(PHP_TEST_SHARED_EXTENSIONS) $(TESTS); TEST_RESULT_EXIT_CODE=$$?; rm $(top_builddir)/tmp-php.ini; exit $$TEST_RESULT_EXIT_CODE; else echo "ERROR: Cannot run tests without CLI sapi."; fi
先不用管那些变量的定义,核心内容就是下面这一句
$(PHP_EXECUTABLE) -n -c $(top_builddir)/tmp-php.ini $(PHP_TEST_SETTINGS) $(top_srcdir)/run-tests.php -n -c $(top_builddir)/tmp-php.ini -d extensi/modules/ $(PHP_TEST_SHARED_EXTENSIONS) $(TESTS);
原来自动测试是通过执行 PHP 源码根目录下的 run-tests.php来进行的,测试脚本一般放在 tests 文件夹下
我们随便打开 php 安装目录下的 ./tests/basic,里面有一些 phpt 文件,这就是一个个的测试脚本了
有些脚本中的内容很简单,001.phpt 中的内容是这样的
--TEST--
Trivial "Hello World" test
--FILE--
--EXPECT--
Hello World
下面我们来只运行 001.phpt 试试
首先要设置一下相关环境变量,指定被测试对象 PHP,这里楼主用的是安装路径下的
php
export TEST_PHP_EXECUTABLE=/usr/local/php7/bin/php
然后在 php 安装根目录下执行
php run-tests.php ./tests/basic/001.phpt
不出意外的话就可以得到下面的结果
这样我们以后就可以写一个脚本来指定要测试的 phpt,并统计出最终的结果。
OneAPM for PHP 能够深入到所有 PHP 应用内部完成应用性能管理 能够深入到所有 PHP 应用内部完成应用性能管理和监控,包括代码级别性能问题的可见性、性能瓶颈的快速识别与追溯、真实用户体验监控、服务器监控和端到端的应用性能管理。想阅读更多技术文章,请访问 OneAPM 官方技术博客。
本文转自 OneAPM 官方博客
以上就介绍了PHP7 扩展之自动化测试,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
内容总结
以上是互联网集市为您收集整理的PHP7扩展之自动化测试全部内容,希望文章能够帮你解决PHP7扩展之自动化测试所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。