在jenkins上运行自动化脚本时候,通常都是使用命令行方式来运行。而运行的测试套件、环境、失败重跑次数等参数都是灵活可配置,所以需要针对命令行制定运行的参数。本文记录python操作命令行参数。
几个概念
python test.py -x a —xx b —xxx=c d e f
- 命令行参数 d e f
- 命令行选项
getopt
语法解析
getopt.getopt(args, options[, long_options])
eg:getopt.getopt(argv, "n:u:",["name=","url="])
eg:getopt.getopt(argv, "-n:u",["name=","url="])
方法参数说明
args: 必填参数,要解析的参数列表,即sys.argv[1:]
options: 必填参数,短选项模式。以字符串格式定义。options后的【冒号:】表示必须有附加的参数值
long_options:非必填参数,长选项模式。以列表格式定义,long_options 后的【等号 = 】表示必须有参数值
返回值解析
options , args = getopt.getopt(sys.argv, “-a:-b:”, [“name=”]
共返回两个值,分别为命令行选项options ,和命令行参数args,均为列表格式
实际应用
test.py
import sys
import getopt
argvs = sys.argv[1:]
options, args = getopt.getopt(argvs, "-i:", "name=")
print("options",options, "\n", "args", args)
for key, value in options:
if key == "-i":
print("input", value)
if key== "--name":
print("name", value)
运行test.py 并查看结果
$ python test.py -i test --name=tao arg1 arg2
optparse.OptionParse
https://www.cnblogs.com/captain_jack/archive/2011/01/11/1933366.html