2016-02-11 32 views
0

我已经得到了一些与“恢复时间”: - 约100 JMX文件执行这些JMX文件&批处理文件,因此因此运行多个JMX文件 - 如何添加运行

问题是在第一个jmx-es运行后,系统本身被加载,所以后来的jmx-es在加载的系统上运行,因此结果不能客观。

这就是为什么我需要在jmx-es执行之间增加一些时间,以便系统本身恢复并显示晚期jmx-es以及第一个的客观结果。

我想过在批处理文件中设置一些睡眠,但它看起来更像是一种解决方法,而不是一个完美的解决方案。

我会很感激任何建议或提示。

回答

1

取决于你在这里坐的是什么操作系统解决方案的选项:

  • Linux的:sync && echo 3 > /proc/sys/vm/drop_caches
  • 的Windows:使用RAMMap工具(Empty菜单选项), “工作集” 应该是一个不错的选择

    RAMMap

实际上,运行良好的JMeter测试应该使主机操作系统处于与测试之前相同的状态,也许测试本身出错或者JMeter配置不正确?有关JMeter调优技巧,请参阅9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure文章。

0

我注意到你提到你是从一个批处理文件运行这些..如果我实现这个我会用

thread group 
    module controller 1 
    module controlelr 2 
    module controller x 
test fragment 1 
test fragment 2 
test fragmetn 3 

这将允许我使用内置的配置中,“线程组“like”ramp-period(以秒为单位) 您可以设置为5分钟... 或..您可以ping您的服务器以查看系统已卸载... 如果我正在与开发团队id放入一个“卸载”api调用的请求,您可以在QA或UAT环境中调用以从其卸载状态测试系统

此外,还有一个“定时器”下的“常量计时器”和“采样器”下的“测试动作”,它可以让你暂停线程。这些也可以根据您的应用程序

+0

谢谢! 现在我正在设置加速值,但是......即使认为它可以帮助我不使系统超载,但如果我增加了加速时间,我的测试将失去它们的一些本质^^。 计时器..正确!我在想他们,但在我看来,通过计时器'暂停'不会释放CPU,所以不会帮助最后一次运行jmx-es。 – Yabko