Grinder - нажмите несколько URL, используя несколько потоков из одного процесса - PullRequest
0 голосов
/ 27 марта 2012

Я использую The Grinder - версию 3.7.1 для нагрузочного тестирования.Мой тест включает в себя просмотр миллиона URL этого формата:

, например: www.someDomain.com/a_1.com www.someDomain.com/a_2.com

ТАК, если я использую Grinderкак таковой, каждый процесс принимает URL, что в моем случае неосуществимо.Итак, я хотел, чтобы каждый поток занимал URL.Но я не знаю, как этого добиться в мясорубке.

1 Ответ

0 голосов
/ 29 марта 2012

Вы можете динамически создать URL в вашем скрипте.Просто используйте стандартные методы замены строк 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

Вы можете прочитать URL-адреса изфайл данных, или построить их на лету.Grinder API предоставляет вам доступ к номеру потока и итерации, потенциально полезным для вашей задачи.

...