您可以在磨床脚本中动态构建网址。只需使用标准的Python字符串替换技术即可。您的解决方案可能是这个样子:
from net.grinder.script.Grinder import grinder
from net.grinder.script import Test
from net.grinder.plugin.http import HTTPRequest
test1 = Test(1, "Request resource")
request1 = test1.wrap(HTTPRequest())
class TestRunner:
def _get_url(self):
url = ""
# build your url here
# ...
return url
def __call__(self):
result = request1.GET(self._get_url())
这里有一些其他脚本可能会有所帮助:
http://grinder.sourceforge.net/g3/script-gallery.html
你可以从一个数据文件的读取网址或建立他们苍蝇。通过Grinder API,您可以访问线程号和迭代,对您的任务可能有用。
嗨特拉维斯,我试着从文件中读取网址。但是一个线程不会占用一个url。一个进程占用一个url。我可以得到线程号并手动分配网址吗? – 2012-03-29 07:07:23
线程,进程或url之间没有严格的耦合。您可以为每个线程分配任意数量的url。你甚至可以为每个线程的每次迭代拥有一个唯一的url。 Python有一套丰富的字符串操作技术,您可以使用它来达到此目的。您可以通过访问grinder.threadNumber和grinder.runNumber获取当前线程的信息。请参阅脚本库(在答案中链接)以获取有关如何执行此操作的示例。 – 2012-03-29 18:24:17
好的,谢谢。我还在研究其他负载测试引擎,并发现使用JMeter更容易。但我也会尝试像你在磨床上说的那样。 – 2012-04-02 09:16:37