2017-02-18 79 views
0

我有一个在端口5000上运行的Flask应用程序,它支持7个支持GET请求的不同端点。所以我可以做一个在Python中使用curl压力测试网站

curl http://localhost:5000/get_species_interactions?q=tiger 

而且它经过一些计算后返回一个页面。还有另外6个这样的端点,每个端点在后端具有不同程度的计算。它可以与一个用户正常工作,但我想获得它在负载下可以执行的指标。我试图通过模拟大量的请求来强调测试,并且我正在考虑使用python脚本。我想到的粗略算法如下:

while (num_tests < 1000): 
    e = get_random_end_point_to_test() # pick one out of 7 end points 
    d = get_random_data_for_get(e) # pick relevant random data to send in curl command 
    resp = curl(e/q?d) 
    num_tests++ 

我的问题是 - 这是在正确的轨道上的一般方法?它是否模拟大量的同步用户?我打算存储执行每个请求和计算统计信息所花费的时间。否则是否有免费的工具可用于在Mac OS上进行这种压力测试?我看到一个名为siege的工具,但它很难在mac上使用。

+1

这可以帮助:http://locust.io/ – ZdaR

+0

谢谢,正是我所需要的我想! – user3079275

回答

1

我会建议Apache jmeter。该工具拥有Stresstests所需的一切,并且在线记录良好。

您需要安装Java