我们正在使用nGrinder运行性能测试。我们在一些用例中希望并行运行多个测试脚本。
在他们的网站上,一个用户一次只能运行一个测试。因此,我们设置了两个用户,但我看到了相同的行为:只有一个测试脚本在运行,其他脚本在READY状态下等待。
nGrinder中有什么方法可以并行运行多个测试脚本吗?
只有当这些测试被提交给不同的用户执行时,如果自由代理足以运行这两个测试,才有可能同时运行多个测试。
我怀疑你没有足够的特工来处理这两件事。
您只能使用一个代理运行多个脚本。我会根据事务组而不是脚本来划分代理。
在grinder里面有parallel.py。我以前只使用过它来并行运行脚本。
查看此链接https://github.com/DealerDotCom/grinder/blob/master/grinder/examples/parallel.py
from net.grinder.script.Grinder import grinder
scripts=["TestScript1","TestScript2","TestScript3"]
确保模块已在进程线程中初始化
对于脚本中的脚本:exec("import%s"%script)
def createTestRunner(脚本):exec("x=%s。TestRunner()"%script)返回x
类TestRunner:definit(self):tid=研磨机螺纹编号
if tid % 4 == 2:
self.testRunner = createTestRunner(scripts[1])
elif tid % 4 == 3:
self.testRunner = createTestRunner(scripts[2])
else:
self.testRunner = createTestRunner(scripts[0])
# This method is called for every run.
def __call__(self):
self.testRunner()