当前位置: 首页 > news >正文

mockery 模拟

composer地址:mockery/mockery - Packagist

github地址:地址

文档地址:Mockery — Mockery Docs 1.0-alpha documentation

根据文档介绍,mockery是php mock对象框架。根据js的mock框架的作用,估计mockery也是通过创建对象获取数值,所以以便用于测试。

一、安装

composer安装

composer require mockery/mockery

二、使用

翻译文档:php mockery 中文文档 · 看云

class Book {}interface BookRepository {function find($id): Book;function findAll(): array;function add(Book $book): void;
}$double = Mockery::mock(BookRepository::class);
$double->find(11);#设置预期内容
#仅执行一次
$double->expects()->add($book);
#执行两次
$double->expects()->add($book)->twice();#忽略验证预期内容
// $double = Mockery::mock()->shouldIgnoreMissing();
$double = Mockery::spy();$double->foo(); // null
$double->bar(); // null#全局辅助方法 全局方法存在则会覆盖
Mockery::globalHelpers();$mock = mock(Some::class);
$spy = spy(Some::class);#trait测试
trait Foo {function foo() {return $this->doFoo();}abstract function doFoo();
}$double = Mockery::mock(Foo::class);
$double->allows()->doFoo()->andReturns(123);
$double->foo(); // int(123)

http://www.lryc.cn/news/106570.html

相关文章:

  • 汽车后视镜反射率检测系统
  • uni-app引用外部图标库(阿里矢量图)
  • day49-Todo List(待办事项列表)
  • 寻找丢失数字:数学与位运算的解密之旅
  • 数论分块学习笔记
  • 【基础理论】了解点过程
  • 深入理解Spring MVC中的@ResponseBody注解
  • 大数据学习教程:Linux高级教程(下)
  • 1.Oracle建表及使用
  • 《网络是怎样连接的》(二.2)
  • MySQL加密插件安装
  • 新手入门Jenkins自动化部署入门详细教程
  • Neural Network学习笔记4
  • [转]关于cmake --build .的理解
  • 【Linux下6818开发板(ARM)】硬件空间挂载
  • 剑指offer 动态规划篇
  • 关于Linux中前端负载均衡之VIP(LVS+Keepalived)自动化部署的一些笔记
  • C++ 拷贝交换技术示例
  • 使用 Go 语言实现二叉搜索树
  • 系统接口自动化测试方案
  • 小研究 - JVM 垃圾回收方式性能研究(一)
  • [LeetCode]链表相关题目(c语言实现)
  • [深入理解NAND Flash (操作篇)] NAND 初始化常用命令:复位 (Reset) 和 Read ID 和 Read UID 操作和代码实现
  • RxJava 复刻简版之二,调用流程分析之案例实现
  • SpringMVC中Model和ModelAndView的区别
  • Tomcat安装与管理
  • React之路由
  • 机器学习深度学习——非NVIDIA显卡怎么做深度学习(坑点排查)
  • 2021 Robocom 决赛 第四题
  • 线程池-手写线程池Linux C简单版本(生产者-消费者模型)