loophp / nanobench
PHP 的一个简单轻量级基准测试工具。
1.1.1
2021-07-03 20:23 UTC
Requires
- php: >= 7.4
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-13 18:26:13 UTC
README
PHP Nanobench
PHP 的一个简单轻量级基准测试工具。
安装
composer require loophp/nanobench
用法
<?php declare(strict_types=1); namespace App; use loophp\nanobench\Benchmark; use loophp\nanobench\Time\HrClock; use loophp\nanobench\Time\Stopwatch; include __DIR__ . '/vendor/autoload.php'; $callable = static function (int $secondsToWait): int { sleep($secondsToWait); return $secondsToWait ** 2; }; $benchmark = new Benchmark(new Stopwatch(new HrClock()), $callable, 3); $duration = $benchmark->run()->getDuration(); $duration->asNanosecond(); $duration->asMicrosecond(); $duration->asMillisecond(); $duration->asSecond(); $benchmark->getReturn(); // Return value of the callable that has been benchmarked
文档
API
API 代码相当轻量,并完全在 基准接口 中描述。
代码质量、测试和基准
每次将更改引入到库中时,Github 都会运行测试。
库中有用 PHPSpec 编写的测试。您可以在 spec
目录中查看它们。运行 composer phpspec
触发测试。
在每次提交之前,都会用 GrumPHP 执行一些检查,运行 composer grumphp
手动检查。
测试质量通过 Infection PHP 变异测试框架进行测试,运行 composer infection
尝试它。
静态分析器也在控制代码。已启用 PHPStan 和 PSalm 的最大级别。
贡献
请随意通过发送 Github pull 请求来贡献。我反应非常快 :-)
如果您不能为代码做出贡献,您也可以在 Github 或 Paypal 上赞助我。
变更日志
查看 CHANGELOG.md 以获取基于 git 提交 的变更日志。
有关更详细的变更日志,请检查 发布变更日志。