PHPUnit 10 正式发布,PHP 单元测试框架
PHPUnit 是一个轻量级的 PHP 测试框架。它是在 PHP5 下面对 JUnit3 系列版本的完整移植,是 xUnit 测试框架家族的一员 (它们都基于模式先锋 Kent Beck 的设计)。
PHPUnit 10 现已发布,这是 PHPUnit 项目历史上最重要的版本。此版本之于 PHPUnit 就像 PHP 7 之于 PHP:大规模清理、重构和现代化,为未来的开发奠定了基础。
注意:PHPUnit 10 需要 PHP 8.1 或更高版本。另请注意,PHPDBG 和 Xdebug 2 不再是受支持的代码覆盖信息来源,需要使用 PCOV 或 Xdebug 3 来收集、处理和报告代码覆盖率信息。
具体来说,PHPUnit 10 版本添加了新功能,修改和删除了现有功能,并修复了错误。
以下是 PHPUnit 10 的大型更改
Event System 事件系统
以前版本的 PHPUnit 为 PHPUnit 测试运行程序的扩展开发人员提供了 TestListener
接口和 TestHook
接口。这两种扩展 PHPUnit 测试运行器的方法都有严重的缺点。 PHPUnit 10 用事件系统替换了 TestListener
和 TestHook
接口:(几乎)现在一切都是事件。所有到控制台和日志文件的输出现在都基于事件。
测试结果与测试问题
PHPUnit 10 在测试结果(错误、失败、不完整、跳过或通过)和测试问题(被认为有风险、触发警告……)之间引入了明确的区分。
PHPUnit 10 的错误处理程序不再将 E_(USER_)WARNING
、 E_(USER_)NOTICE
、 E_(USER_)DEPRECATED
等转换为异常。因此,例如,当 E_USER_NOTICE
被触发时,测试不再被强行中止。
默认情况下,PHPUnit 的测试运行器不显示有关弃用、通知或警告的详细信息。如果想要显示这些详细信息,必须使用 CLI 选项 --display-deprecations
、 --display-notices
和 --display-warnings
(或其对应的 XML 配置文件)。
元数据
PHPUnit 10 引入了对 PHP 8 属性的支持,用于将元数据添加到测试类和测试方法以及测试代码单元。
但仍然支持代码注释中的老式注释,和将元数据附加到代码单元的现代属性。
下载方式
此 PHP 存档 (PHAR) 包含 PHPUnit 所需的一切。
➜ wget -O phpunit https://phar.phpunit.de/phpunit-10.phar ➜ chmod +x phpunit ➜ ./phpunit --version PHPUnit 10.0.0 by Sebastian Bergmann and contributors.
或者使用 Composer 下载并安装 PHPUnit 及其依赖项。
➜ composer require --dev phpunit/phpunit ^10 ➜ ./vendor/bin/phpunit --version PHPUnit 10.0.0 by Sebastian Bergmann and contributors.

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
AI 影评家: 用 Hugging Face 模型打造一个电影评分机器人
本文为社区成员 Jun Chen 为 百姓 AI 和 Hugging Face 联合举办的黑客松所撰写的教程文档,欢迎你阅读今天的第二条推送了解和参加本次黑客松活动。文内含有较多链接,我们不再一一贴出,请 点击这里 查看渲染后的 Notebook 文件。 随着人工智能和大模型 ChatGPT 的持续火爆,越来越多的个人和创业者都想并且可以通过自己创建人工智能 APP 来探索这个新兴领域的机会。只要你有一个想法,你就可以通过各种开放社区和资源实现一些简单功能,满足特定领域或者用户的需求。 试想现在有一部新的电影刚刚上线了,我们和朋友在家热烈的讨论着这部新的电影,这些都是非常有价值的电影评价的信息,不过估计这个时候很少有人会特地去登陆自己的豆瓣账号再去发表这些刚刚的评论,如果有一个电影评论机器人可以自动收集这些评论并且根据评论打分,然后自动上传到制定的电影评论网站呢?再比如,我们在某个餐厅吃饭,我们只用对着手机说几句话,我们的评分就自动上传到大众点评呢?我们来试试如何实现这样一个小小的机器人吧! 在本教程中,我们将探索如何使用 Hugging Face 资源来 Finetune 一个模型且...
- 下一篇
Mybatis-Flex 1.0.2 发布,一个优雅的 Mybatis 增强框架
Mybatis-Flex 特征 1、很轻量,整个框架只依赖 Mybatis 再无其他第三方依赖 2、只增强,支持 Entity 的增删改查、及分页查询,但不丢失 Mybatis 原有功能 3、内置 Db + Row 工具,可以无需实体类对数据库进行增删改查 4、支持多种数据库类型,还可以通过方言持续扩展 5、支持多(联合)主键,以及不同的主键内容生成策略 6、支持逻辑删除设置、更新或插入的默认值配置以及大字段等设置 7、支持乐观锁字段配置,在数据更新时自动进行乐观锁检测 8、极其友好的 SQL 联动查询,IDE 自动提示不再担心出错 9、更多小惊喜 开始 Maven 依赖 示例 1:Mybatis-Flex 原生(非 Spring) 示例 2:Mybatis-Flex with Spring 示例 3:Mybatis-Flex with Spring boot hello world(原生) 第一步:编写 Entity 实体类 @Table("tb_account") public class Account { @Id(keyTYpe = KeyType.Auto) ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Docker安装Oracle12C,快速搭建Oracle学习环境