这里主要用到的方法是find_locustfile方法。对应源码部分如下:
options, _ = parser.parse_known_args(args=args)
locustfile = find_locustfile(options.locustfile)
其中options上面一章已经讲解过了,是一个Namespace,它包含了config,help,locustfile,version四个部分,都是为了获取你的命令行参数和文件地址而服务的。
而options.locustfile是首先从configargparse.ArgumentParser里注册的命令行参数里找你定义的寻找文件的名称的。
如果你使用了-f去指定,那么它就以指定的名称去加载。如果没有指定,则默认为‘locustfile’。
我们继续解析find_locustfile是怎么运作的。
def find_locustfile(locustfile):
"""
Attempt to locate a locustfile, either explicitly or by searching parent dirs.
"""
# Obtain env value
names = [locustfile]