首先用Benchmark_Iterate类来测试程序中某个函数或类的某个方法的执行时间。
benchmark1.php
require_once(@#Benchmark/Iterate.php@#);
$benchmark = new Benchmark_Iterate();
$benchmark->run(10, @#myFunction@#,@#test@#);
$result = $benchmark->get();
echo "
"; print_r($result); echo "
";
exit;
function myFunction($var) {
// do something
echo @#Hello @#;
}
?>
建立benchmark Iterate对象$benchmark,这个对象用来执行myFunction函数10次。
$argument变量每次都传递给myFunction. 多次运行的分析结果存入$result,然后用benchmark对象的get()方法来获取。这个结果用print_r()输出到屏幕。通常会输出这样的结果:
Hello Hello Hello Hello Hello Hello Hello Hello Hello Hello
Array
(
[1] => 0.000427 [2] => 0.000079 [3] => 0.000072 [4] => 0.000071 [5] => 0.000076 [6] => 0.000070 [7] => 0.000073 [8] => 0.000070 [9] => 0.000074 [10] => 0.000072 [mean] => 0.000108 [iterations] => 10)
myFunction的每次执行,benchmark对象都会跟踪执行时间。并且会计算平均的执行时间([mean]那一行)。通过多次运行目标函数,你可以得到该函数的平均运行时间。
在实际测试中,函数的次数应当至少1000次左右,这样可以得到较客观的结果。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/