Funkload API测试

时间:2012-06-26 17:20:37

标签: python load-testing funkload

所以我想使用funkload来压力测试API。我在测试中有一组网址

问题是每次请求都通过查询字符串发送身份验证(不涉及cookie)

so / abc?auth = token1将是一个用户和/ abc?auth = token2是另一个

我的代码类似于:

class Simple(FunkLoadTestCase):

    def setUp(self):
        # fetch urls from a file ... ending up with something like
        urlList = ['http://localhost/abc?auth=1', 'http://localhost/def?auth=1']
        self.urlList = urlList

    def test_simple(self):
        for url in self.urlList:
            self.get(url, description='Get url')

问题是服务器严重依赖于memcached,因此同时运行相同的用户x次只会使服务器在第一次请求时处于适当的负载状态。

我正在寻找一种方法来识别我正在运行的并发用户,因此我可以修改每个并发用户的身份验证令牌。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

对于遇到类似问题的人。我想出了如何使用凭证服务器来完成它。而不是在passwords.txt中实际使用username:password我使用了name:authkey。

另一种方法,但不能扩展为运行多个负载生成服务器,您可以访问self.thread_id,这样您就可以知道正在运行的线程/用户。