位置: IT常识 - 正文

phpt文件内容解析(php 文件处理)

编辑:rootadmin
phpt测试文件说明 phpt文件用于PHP的自动化测试,这是PHP用自己来测试自己的测试数据用例文件。 测试脚本通过执行PHP源码根目录下的run-tests.php,读取phpt文件执行测试。 phpt文件包含 TEST,FILE,EXPECT 等多个段落的文件。在各个段落中,TEST、FILE ... phpt测试文件说明

推荐整理分享phpt文件内容解析(php 文件处理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php 文件,php文件解密工具,php tpl文件,php 文件,php tpl文件,php tpl文件,php文件解密工具,php文件的content-type,内容如对您有帮助,希望把文章链接给更多的朋友!

phpt文件用于PHP的自动化测试,这是PHP用自己来测试自己的测试数据用例文件。 测试脚本通过执行PHP源码根目录下的run-tests.php,读取phpt文件执行测试。

phpt文件包含 TEST,FILE,EXPECT 等多个段落的文件。在各个段落中,TEST、FILE、EXPECT是基本的段落, 每个测试脚本都必须至少包括这三个段落。其中:

TEST段可以用来填写测试用例的名字。FILE段是一个 PHP 脚本实现的测试用例。EXPECT段则是测试用例的期待值。phpt文件内容解析(php 文件处理)

在这三个基本段落之外,还有多个段落,如作为用例输入的GET、POST、COOKIE等,此类字段最终会赋值给\(env变量。 比如,cookie存放在\)env['HTTP_COOKIE'],$env变量将作为用例中脚本的执行环境。一些主要段落说明如下表所示:

PHP测试脚本中的段落说明

:段落名填充内容备注TEST测试脚本语句必填段落FILE测试脚本语句必填段落。用PHP语言书写的脚本语句。其执行的结果将与 EXPECT* 段的期待结果做对比。ARGSFILE 段的输入参数选填段落SKIPIF跳过这个测试的条件选填段落POST传入测试脚本的 POST 变量选填段落。如果使用POST段,建议配合使用SKIPIF段GET传入测试脚本的 GET 变量选填段落。如果使用GET段,建议配合使用SKIPIF段。POST_RAW传入测试脚本的POST内容的原生值选填段落。比如在做文件上传测试时就需要使用此字段来模拟HTTP的POST请求。COOKIE传入测试脚本的COOKIE的值选填段落。最常见的是将PHPSESSID的值传入。INI应用于测试脚本的 ini 设置选填段落。例如 foo=bar 。其值可通过函数 ini_get(string name_entry) 获得。ENV应用于测试脚本的环境设置选填段落。例如做gzip测试,则需要设置环境HTTP_ACCEPT_ENCODING=gzip。EXPECT测试脚本的预期结果 相当于测试文件的结果必填段落EXPECTF测试脚本的预期结果选填段落。可用函数 sscanf() 中的格式表达预期结果 EXPECT 段的变体EXPECTREGEX测试脚本的正则预期结果选填段落。以正则的方式包含多个预期结果,是预期结果EXPECT段的一种变体。EXPECTHEADERS测试脚本的预期头部内容选填段落.测试脚本期待HTTP头部返回,是预期结果EXPECT段的另一种格式。验证过程中会按头部的字段一一比对测试,比如zlib扩展中,如果开启zlib.output_compression, 则在EXPECTHEADERS中包含Content-Encoding: gzip作为预期结果。

phpt文件只是用例文件,它还需要一个控制器来调用这些文件,以实现整个测试过程。 PHP的测试控制器文件是源码根目录下的run-tests.php文件。此文件的作用是根据传入的参数,分析用例相关数据,执行测试过程。 其大概过程如下:

分析输入的命令行,根据参数配置相关参数,初始化各种信息。分析用例输入参数,获取需要执行的用例文件列表。PHP支持指定单文件用例执行,支持多文件用例执行, 支持 .phpt多用例执行,支持 .phpt简化版本多用例执行(相当于.phpt)。遍历用例文件列表,执行每一个用例。对于每个用例,PHP会具体解析测试脚本中各个段落的含义, 清除所有上次测试的记录与设置将准备此次的测试环境,并把各种中间文件和日志文件准备好, 然后用环境变量 TEST_PHP_EXECUTABLE 指定的 PHP 可执行对象运行实际的测试语句。 最后将运行后的结果和测试脚本中的预期结果(EXPECT*段)进行比较,如果比较结果一致,则测试通过;如果不一致,则测试失败, 最后将结果信息一一记录到用户设置的日志文件中。生成测试结果。

这仅仅是执行的过程,除此之外,还有若干准备和清理工作,如,对上次测试遗留下的环境的清理, 本次测试所必须的环境变量的读取与设置,对测试参数的解析,测试脚本名的解析,各种输出文件的准备等等

以测试脚本/tests/basic/001.phpt为例:

[php]--TEST--Trivial "Hello World" test--FILE--<?php echo "Hello World"?>--EXPECT--Hello World

这个用例脚本只包含必填的三项。测试控制器会执行--FILE--下面的PHP文件, 如果最终的输出是--EXPECT--所期望的结果则表示这个测试通过,如果不一致,则测试不通过, 最终这个用例的测试结果会汇总会所有的测试结果集中。

本文链接地址:https://www.jiuchutong.com/zhishi/313332.html 转载请保留说明!

上一篇:中国互联网创业工具库Startup Tools | 17Startup Blog(中国互联网创业成功的年轻人)

下一篇:dedecms织梦自带采集插件详细图文教程(织梦使用手册)

  • 高新技术企业享受15%税率优惠的条件
  • 税收成本包括哪些
  • 盘盈固定资产明细账怎么填写?
  • 母公司出售子公司给另一家子公司
  • 金税盘的发票怎么作废
  • 自产委托加工用于简易计税
  • 入账成本会计分录
  • 现代服务业加计抵减政策适用范围
  • 折扣销售的增值税处理方式
  • 合同方和付款方不一致,发票开付款方可以吗
  • 应收账款多久收回合适
  • 事业单位库存现金
  • 境外代扣代缴的税最后归谁所有
  • 增值税普通发票税率表
  • 给员工购买口罩计入什么费用
  • 广告服务差额征税
  • 销售不动产增值税计税依据
  • 账表不一致的原因和根源
  • 应付质保金到期怎么办
  • 分支机构企业所得税是否必须跟总公司分摊吗
  • 关联方之间债务豁免账务处理
  • 个人缴付的年金是什么
  • 白酒消费税最低计税价格
  • 甲供材料如何纳税
  • 资本公积弥补亏损规定
  • 华为微信铃声怎么设置不跟随系统
  • 销售费用占收入比例叫什么
  • 为什么电脑开启了摄像头但是看不见
  • 营收和产值的区别和联系
  • 机票增值税怎么计算
  • 餐费发票可以抵扣成本吗
  • 指定的网络名不再可用 共享打印机00x0000040
  • win10任务视图怎么用
  • 购货方收到红字发票怎么报税
  • 浅谈特殊儿童的融合教育论文
  • 几款常用的表单设计软件
  • oppor11s输入法怎么清除记忆
  • 张家界天门山介绍简介
  • thinkphp count
  • 资产负债表货币资金公式
  • thinkphp saveall
  • vue为什么监听不到对象内部属性
  • 快递行业一般纳税人税率是多少
  • spring的文章
  • 织梦开发教程
  • 增值税专用发票的税率是多少啊
  • mysql从一个库导入进另一个库
  • 企业利润表表怎么看
  • 购买固定资产的运费计入什么科目
  • 已经认证抵扣的发票,要退回,怎么处理
  • 过次页是本页合计吗
  • 企业营改增税率是多少
  • 代收的车船税没交怎么办
  • 如何开发票?
  • 企业免征税范围有哪些
  • sql wind
  • cmd命令行窗口快捷键
  • win7系统文件夹怎么加密码
  • linux extundelete
  • ubuntu下载安装QQ的命令
  • macbookpro接听苹果手机电话
  • centos简易安装
  • 列举linux常用的几个命令
  • win10无法安装无线显示器
  • Android游戏开发书籍
  • css常用布局方式
  • pycharm打开文件怎么运行
  • easyui原理
  • eclipse窗口显示设置
  • jquery库有哪些
  • javascript中匿名函数
  • python爬虫程序下载网页上内容
  • Python中的多行注释文档编写风格汇总
  • 收购发票怎么抵扣申报
  • 支付水电费的增值税税率文件
  • 补发上个月的工资怎么做账
  • 北京住房公积金最高限额
  • 税务ukey登录界面
  • 车船税发票丢了怎么补办
  • 湖南兴广地税务师事务所有限公司(兴广集团有限公司)
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设