如何测试系统重启时间超过一年?

时间:2013-08-13 10:33:14

标签: linux unit-testing unix

我想要针对Linux系统的测试代码,该系统自一年以来未重启。我找不到自上个月以来没有重新启动的系统。有没有办法模拟它?

我尝试了一种奇怪的方法,将系统时间更改为一年后重新启动系统,然后将日期更改为当前时间。但这不会解决我的问题。

我想测试大整数计数器。

2 个答案:

答案 0 :(得分:0)

有多种方法可以检查最新的启动时间,例如:

% last reboot | head -n 1
reboot           ~                         Tue Aug 13 09:56

% sysctl kern.boottime
kern.boottime: { sec = 1376377004, usec = 264281 } Tue Aug 13 09:56:44 2013

答案 1 :(得分:0)

而不是尝试将其作为系统测试进行测试,在其中测试整个程序,从执行代码的部分中拆分访问系统正常运行时间的代码(返回您担心的大整数)使用正常运行时间的计算。然后对后者进行单元测试。

如果您在Linux上使用C或C ++进行编程,则可能正在使用sysinfo系统调用来获取正常运行时间。在这种情况下,您可以向计算代码发送指向struct sysinfo的指针。您的单元测试可以填写sysinfo.uptime值所需的任何大值。