我有一些代码需要在自动化回归测试中连续运行并测量其速度。这样做的目的是为了让我知道对代码所做的更改对性能产生了负面影响。以下是伪代码示例:
我正在研究ThreadMXBean#getCurrentThreadCpuTime(),但关键问题是自动化测试将在各种不同的开发人员电脑上运行,并自动分配到具有不同硬件和能力的测试服务器上。
这样做是否可行,数字是否会出错?
应该如何解决这个问题?是否有更好的方法?是否有标准工具可以处理这种情况?
cpuTimer.start
runTest
cpuTimer.stop
diff = cpuTimer.getDuration
if diff > prevDiff // Perhaps to within a tolerance
failTest
我正在研究ThreadMXBean#getCurrentThreadCpuTime(),但关键问题是自动化测试将在各种不同的开发人员电脑上运行,并自动分配到具有不同硬件和能力的测试服务器上。
这样做是否可行,数字是否会出错?
应该如何解决这个问题?是否有更好的方法?是否有标准工具可以处理这种情况?