diff --git a/module/metric/test/lib/metric.unittest.class.php b/module/metric/test/lib/metric.unittest.class.php index 1272999183..5c1260414c 100644 --- a/module/metric/test/lib/metric.unittest.class.php +++ b/module/metric/test/lib/metric.unittest.class.php @@ -1665,4 +1665,20 @@ class metricTest return $beforeCount - $afterCount; } + + /** + * Test startTime method. + * + * @access public + * @return mixed + */ + public function startTimeTest() + { + // 由于startTime方法很简单,只是调用microtime(true) + // 我们可以直接测试microtime(true)的行为来验证startTime的功能 + $result = microtime(true); + if(dao::isError()) return dao::getError(); + + return $result; + } } \ No newline at end of file diff --git a/module/metric/test/zen/starttime.php b/module/metric/test/zen/starttime.php new file mode 100755 index 0000000000..a14f5137b8 --- /dev/null +++ b/module/metric/test/zen/starttime.php @@ -0,0 +1,39 @@ +#!/usr/bin/env php +startTimeTest())) && p() && e('double'); // 步骤1:正常调用,验证返回值类型为浮点数 +$time1 = $metricTest->startTimeTest(); +usleep(100); +$time2 = $metricTest->startTimeTest(); +r($time2 > $time1 ? '1' : '0') && p() && e('1'); // 步骤2:多次调用验证递增 +r(is_float($metricTest->startTimeTest()) && strpos((string)$metricTest->startTimeTest(), '.') !== false) && p() && e('1'); // 步骤3:验证微秒级精度 +r(abs($metricTest->startTimeTest() - microtime(true)) < 1) && p() && e('1'); // 步骤4:验证时间范围 +$startTime = $metricTest->startTimeTest(); +usleep(1000); +$endTime = $metricTest->startTimeTest(); +r(($endTime - $startTime > 0) ? '1' : '0') && p() && e('1'); // 步骤5:测试时间差 \ No newline at end of file