最近换了份新工作 有时间来整理一篇
在命令行CMD中执行文件过程中如何传入并识别参数
1 # -*- coding: utf-8 -*-
2 # CMD运行类
3 # 作者:
4 # 时间: 2019-10-22
5
6
7 import sys
8 import getopt
9
10
11 from WorkUtils.UtilsLog import UtilsLog
12
13
14 class UtilsCmd:
15 def __init__(self):
16 self.log = UtilsLog()
17 self.log.info("调用CMD运行类")
18 self.log.info(self.__class__)
19
20 def usage(self):
21 self.log.debug("帮助信息:")
22 self.log.debug(" * -h : print this.")
23 self.log.debug(" * -c [val] : 用例描述")
24 self.log.debug(" * -v [val] : 版本号")
25
26 def case_cmd(self):
27 self.log.debug("运行用例执行参数模式。。。")
28 description = ""
29 version = ""
30 try:
31 opts, args = getopt.getopt(sys.argv[1:], "hd:v:")
32 for op, value in opts:
33 if op == "-d":
34 description = value
35 elif op == "-v":
36 version = value
37 elif op == "-h":
38 # 帮助信息
39 self.usage()
40 sys.exit()
41 else:
42 sys.exit()
43 except getopt.GetoptError as e:
44 self.log.error("出现ERROR:")
45 self.log.error(e)
46 return {
47 "description": description,
48 "version": version
49 }
这里写了一个类
方法 usage 是用来输出帮助信息的
方法 case_cmd 是在使用命令行中执行测试用例过程中 识别传入的参数 -d 与 -v
opts, args = getopt.getopt(sys.argv[1:], "hd:v:")
这行代码是获取执行文件的参数 可识别 h d: v: 三种后缀参数格式
可以给大家看下效果
未输入参数:
输入 -h :
输入 -v 与 -d :