Wczoraj wraz z wydaniem Laravel 9.32 wprowadzono pomocnik do testów porównawczych, który jest przydatny do szybkiego testowania wydajności niektórych części aplikacji.
Działa poprzez przekazanieYou thought that yesterday was only about the new "dd" source stuff? There is more! Beginning with yesterday's @laravelphp release, you may use the new "Benchmark" class to quickly test the performance of certain parts of your application. ⏱
— nuno maduro 🤌🏻 (@enunomaduro) September 29, 2022
📚 https://t.co/7G7B5mJuVx. pic.twitter.com/JeYVk9m5Tm
Zamknięcia, które uruchamia kod, który chcesz przetestować i zwraca czas, jaki zajęło to
ms:
zamknięći opcjonalnie skonfigurować liczbę iteracji, które zamknięcia powinny być wykonywane:
use Illuminate\Support\Benchmark;
Benchmark::measure(fn() => Post::find(1));
// Returns time in ms.
// i.e., 0.1ms
Klasa Benchmark ma metodę dd(), która uruchamia powyższe pomiary zapakowane w wywołanie
dd(), które wyśle wyniki do konsoli lub przeglądarki i wyjdzie.
// Run each callback three times
Benchmark::measure([
fn() => Post::find(1),
fn() => Post::find(5),
], 3);
// [0.02, 0.03]
// Use keys
Benchmark::measure([
'Post 1' => fn() => Post::find(1),
'Post 5' => fn() => Post::find(5),
], 3);
// ['Post 1' => 0.02, 'Post 5' => 0.03]
Połącz tę aktualizację z wyjściem pliku/linii dd(), i masz kilka przydatnych nowych narzędzi do debugowania!
Benchmark::dd([
'Post 1' => fn() => Post::find(1),
'Post 5' => fn() => Post::find(5),
]);
Aby dowiedzieć się więcej, zajrzyj do sekcji testów porównawczych teraz dostępnej w dokumentacji pomocników. a>