刺槐--no幅--client = 1 --hatch率= 1 --num请求= 2主机= http://localhost蝗虫。从Python代码读取--host值
我想读 - 主机值在我的HTTPLocust类的cmd行中提供。我知道我可以使用主机属性直接分配,但我不希望它。我想在HTTPLocust类中从cmd行读取值。我正在构建自定义日志,并希望将该值传递给日志。我试过HTTPLocust.host,但是它没有返回。
另外我想读取-web-port从python代码。
刺槐--no幅--client = 1 --hatch率= 1 --num请求= 2主机= http://localhost蝗虫。从Python代码读取--host值
我想读 - 主机值在我的HTTPLocust类的cmd行中提供。我知道我可以使用主机属性直接分配,但我不希望它。我想在HTTPLocust类中从cmd行读取值。我正在构建自定义日志,并希望将该值传递给日志。我试过HTTPLocust.host,但是它没有返回。
另外我想读取-web-port从python代码。
您可以通过sys.argv
访问它,或者通过
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-H', '--host')
args, unknown = parser.parse_known_args()
print str(args.host)
解析选项可以通过User()
类的实例访问host
变量。看下面的例子:
from locust import HttpLocust, TaskSet, task
import random, requests, time, os, inspect, json, sys
class UserBehaviour(TaskSet):
@task(1)
def test1(self):
user = User()
print(user.host)
self.client.get("/v3/User/ListOfCoupon/")
class User(HttpLocust):
task_set = UserBehaviour
min_wait = 1000
max_wait = 3000
查看日志:
~/P/m/p/general (master ⚡↑) locust -f app_couponlist.py --host=http://www.google.com
[2017-09-19 14:33:13,020] Mesuts-MacBook.local/INFO/locust.main: Starting web monitor at *:8089
[2017-09-19 14:33:13,021] Mesuts-MacBook.local/INFO/locust.main: Starting Locust 0.8a3
[2017-09-19 14:33:22,281] Mesuts-MacBook.local/INFO/locust.runners: Hatching and swarming 5 clients at the rate 1 clients/s...
[2017-09-19 14:33:22,282] Mesuts-MacBook.local/INFO/stdout: http://www.google.com
[2017-09-19 14:33:22,282] Mesuts-MacBook.local/INFO/stdout:
[2017-09-19 14:33:23,285] Mesuts-MacBook.local/INFO/stdout: http://www.google.com
[2017-09-19 14:33:23,285] Mesuts-MacBook.local/INFO/stdout:
[2017-09-19 14:33:24,226] Mesuts-MacBook.local/INFO/stdout: http://www.google.com