draculaid/phpmocker

此包的最新版本(v0.0.2)没有提供许可证信息。

为最终类和特质创建模拟类;为静态、私有和最终方法创建模拟方法

v0.0.2 2023-04-29 13:29 UTC

This package is auto-updated.

Last update: 2024-08-30 01:49:49 UTC


README

Если ваш проект использует PHP7.4 - Следует смотерть ветку `master-7`. Эта ветка актуальна под PHP 8.1.0 и выше

Packagist上的页面以及添加到Composer的命令(安装详情

  • 对于PHP 8.1及以上版本 composer require draculaid/phpmocker
  • 对于PHP 7.4.x - 8.0.x版本 composer require draculaid/phpmocker dev-master-7

文档和示例

PhpMocker库允许创建模拟类(类测试替身)和使用模拟方法(方法测试替身),用于

  • 最终类
  • 枚举
  • 直接为特质(而不是实现特质的类)
  • 最终、静态和私有方法

PhpMocker可以在不依赖任何单元测试框架的情况下使用,甚至可以在没有任何测试框架的情况下使用。通过分析PHP代码并在类加载和执行时更改代码,PhpMocker能够将所有类型的类的方法转换为模拟方法。为此,PhpMocker提供了一个类自动加载器(它可以与Composer或其他任何自动加载器一起工作)。

PhpMocker还支持使用继承创建模拟类(对于类、抽象类和特质)

模拟方法支持以下功能

  • 调用计数器
  • 为调用指定响应
  • 抛出任何异常
  • 执行用户定义的函数,包括替换方法响应
  • 通过引用返回参数值
  • 修改方法参数的值

上述所有功能都可以分配给特定的方法参数。

PhpMocker还提供了与类非公开元素(方法、属性和常量)交互的能力,以及创建对象并设置属性的方便机制。包括创建不调用构造函数的对象或调用非公开构造函数的对象。

计划...

  • 继续完善文档
  • 函数的模拟
  • include()和require()构造的模拟