Carbon 库的 Test Time 测试包

Laravel

Test Time 是Spatie的一个软件包,它为Carbon v2提供了一个帮助器来控制PHPUnit测试中的时间流。

Carbon 是一个很好的库,可以在PHP项目中使用。TheSpatie\TestTime\TestTimeclass包含了一些在底层的函数,可以通过Carbon操控当前为止的时间。

自述文件提供了一些简单的示例,可帮助您了解如何在测试中使用它:

// 时间被停止
TestTime::freeze();

// 时间定为一年后
TestTime::addYear();

// 根据当前年份+1
$year = (new Carbon())->format('Y');

使用此库,您还可以通过调用典型的Carbon方法来增加或减少时间来延长测试时间:

TestTime::addMinute();

// 你也可以这样增加时间
TestTime::addMonth(3)->addYear();

在底层,TestTime 类使用Carbon::setTestNow()设置时间。这个包对于使用Carbon v2的任何PHP项目都很有用。

您可以在 spatie/test-time 上了解有关此软件包的更多信息,获取完整的安装说明以及在GitHub上查看源代码。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/testing-time-wi...

译文地址:https://learnku.com/laravel/t/33968

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 1

Carbon 自带相关测试时间函数,也可以参考一下,eg:

<?php
Carbon::setTestNow(Carbon::tomorrow());
?>
4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!